bazel_dep(
name = "com_github_bcsgh_parser_rules",
version = ...,
)
register_toolchains("@com_github_bcsgh_parser_rules//parser:linux_flex_bison")
load("@com_github_bcsgh_parser_rules//parser:parser.bzl", "genlex")
genlex(name, src, data, cc, h)
Generate a lexer using flex.
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| src | The root source file. | Label | required | |
| data | Other files needed. | List of labels | optional | [] |
| cc | The generated C++ source file. | Label | required | |
| h | The generated C++ header file. | Label | required |
load("@com_github_bcsgh_parser_rules//parser:parser.bzl", "genyacc")
genyacc(name, src, data, cc, graph, graph_file, h, loc, report, report_file)
Generate a paser using bison.
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| src | The root source file. | Label | required | |
| data | Other files needed. | List of labels | optional | [] |
| cc | The generated C++ source file. | Label | required | |
| graph | Generate a state machine graph. (Depricated, use graph_file.) | Boolean | optional | False |
| graph_file | Generate a state machine graph. | Label | optional | None |
| h | The generated C++ header file. | Label | required | |
| loc | The generated location header (if used). This can be manipulated in the .y file via %define api.location.file. |
Label | optional | None |
| report | Generate a "report" (--verbose --report=all). (Depricated, use report_file.) |
Boolean | optional | False |
| report_file | Generate a "report" (--verbose --report=all). |
Label | optional | None |
load("@com_github_bcsgh_parser_rules//parser:parser.bzl", "parser_toolchain")
parser_toolchain(name, lex_gen, parse_gen)
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| lex_gen | - | String | required | |
| parse_gen | - | String | required |
load("@com_github_bcsgh_parser_rules//parser:parser.bzl", "ParserGenInfo")
ParserGenInfo(lex_gen, parse_gen)
Information about how to invoke lexer and parser generators tools.
FIELDS
| Name | Description |
|---|---|
| lex_gen | - |
| parse_gen | - |
To configure the git hooks, run ./.git_hooks/setup.sh