difftastic/vendored_parsers/tree-sitter-make/src/grammar.json

3829 lines
97 KiB
JSON

{
"name": "make",
"word": "word",
"rules": {
"makefile": {
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_thing"
}
},
"_thing": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "rule"
},
{
"type": "SYMBOL",
"name": "_variable_definition"
},
{
"type": "SYMBOL",
"name": "_directive"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
},
"rule": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_ordinary_rule"
},
{
"type": "SYMBOL",
"name": "_static_pattern_rule"
}
]
},
"_ordinary_rule": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_targets"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ":"
},
{
"type": "STRING",
"value": "&:"
},
{
"type": "STRING",
"value": "::"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_prerequisites"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "recipe"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
}
},
"_static_pattern_rule": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_targets"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target_pattern"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_prerequisites_pattern"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "recipe"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
}
},
"_targets": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "list"
},
"named": true,
"value": "targets"
},
"_target_pattern": {
"type": "FIELD",
"name": "target",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "list"
},
"named": true,
"value": "pattern_list"
}
},
"_prerequisites": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_normal_prerequisites"
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_normal_prerequisites"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "|"
},
{
"type": "SYMBOL",
"name": "_order_only_prerequisites"
}
]
}
]
},
"_normal_prerequisites": {
"type": "FIELD",
"name": "normal",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "list"
},
"named": true,
"value": "prerequisites"
}
},
"_order_only_prerequisites": {
"type": "FIELD",
"name": "order_only",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "list"
},
"named": true,
"value": "prerequisites"
}
},
"_prerequisites_pattern": {
"type": "FIELD",
"name": "prerequisite",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "list"
},
"named": true,
"value": "pattern_list"
}
},
"recipe": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_attached_recipe_line"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "conditional"
},
{
"type": "SYMBOL",
"name": "_prefixed_recipe_line"
}
]
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
},
{
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "conditional"
},
{
"type": "SYMBOL",
"name": "_prefixed_recipe_line"
}
]
}
}
]
}
]
}
},
"_attached_recipe_line": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "recipe_line"
},
{
"type": "BLANK"
}
]
}
]
},
"_prefixed_recipe_line": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_recipeprefix"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "recipe_line"
},
{
"type": "BLANK"
}
]
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"recipe_line": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "@"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "-"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "+"
}
}
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "shell_text_with_split"
},
"named": true,
"value": "shell_text"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_recipeprefix"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "shell_text_with_split"
},
"named": true,
"value": "shell_text"
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_recipeprefix"
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_shell_text_without_split"
},
"named": true,
"value": "shell_text"
}
]
},
"_variable_definition": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "VPATH_assignment"
},
{
"type": "SYMBOL",
"name": "RECIPEPREFIX_assignment"
},
{
"type": "SYMBOL",
"name": "variable_assignment"
},
{
"type": "SYMBOL",
"name": "shell_assignment"
},
{
"type": "SYMBOL",
"name": "define_directive"
}
]
},
"VPATH_assignment": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "STRING",
"value": "VPATH"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "STRING",
"value": ":="
},
{
"type": "STRING",
"value": "::="
},
{
"type": "STRING",
"value": "?="
},
{
"type": "STRING",
"value": "+="
}
]
}
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "paths"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"RECIPEPREFIX_assignment": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "STRING",
"value": ".RECIPEPREFIX"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "STRING",
"value": ":="
},
{
"type": "STRING",
"value": "::="
},
{
"type": "STRING",
"value": "?="
},
{
"type": "STRING",
"value": "+="
}
]
}
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "text"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"variable_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_target_or_pattern_assignment"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_name"
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "STRING",
"value": ":="
},
{
"type": "STRING",
"value": "::="
},
{
"type": "STRING",
"value": "?="
},
{
"type": "STRING",
"value": "+="
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "text"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"_target_or_pattern_assignment": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "target_or_pattern",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
}
]
},
"shell_assignment": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "STRING",
"value": "!="
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "_shell_command"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"define_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "define"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "STRING",
"value": ":="
},
{
"type": "STRING",
"value": "::="
},
{
"type": "STRING",
"value": "?="
},
{
"type": "STRING",
"value": "+="
}
]
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "value",
"content": {
"type": "ALIAS",
"content": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_rawline"
}
},
"named": true,
"value": "raw_text"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "endef"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"_directive": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "include_directive"
},
{
"type": "SYMBOL",
"name": "vpath_directive"
},
{
"type": "SYMBOL",
"name": "export_directive"
},
{
"type": "SYMBOL",
"name": "unexport_directive"
},
{
"type": "SYMBOL",
"name": "override_directive"
},
{
"type": "SYMBOL",
"name": "undefine_directive"
},
{
"type": "SYMBOL",
"name": "private_directive"
},
{
"type": "SYMBOL",
"name": "conditional"
}
]
},
"include_directive": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "include"
},
{
"type": "FIELD",
"name": "filenames",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "sinclude"
},
{
"type": "FIELD",
"name": "filenames",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "-include"
},
{
"type": "FIELD",
"name": "filenames",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
},
"vpath_directive": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "vpath"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "vpath"
},
{
"type": "FIELD",
"name": "pattern",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "vpath"
},
{
"type": "FIELD",
"name": "pattern",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "FIELD",
"name": "directories",
"content": {
"type": "SYMBOL",
"name": "paths"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
},
"export_directive": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "export"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "export"
},
{
"type": "FIELD",
"name": "variables",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "export"
},
{
"type": "SYMBOL",
"name": "variable_assignment"
}
]
}
]
},
"unexport_directive": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unexport"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unexport"
},
{
"type": "FIELD",
"name": "variables",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
}
]
},
"override_directive": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "override"
},
{
"type": "SYMBOL",
"name": "define_directive"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "override"
},
{
"type": "SYMBOL",
"name": "variable_assignment"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "override"
},
{
"type": "SYMBOL",
"name": "undefine_directive"
}
]
}
]
},
"undefine_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "undefine"
},
{
"type": "FIELD",
"name": "variable",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"private_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "private"
},
{
"type": "SYMBOL",
"name": "variable_assignment"
}
]
},
"conditional": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "condition",
"content": {
"type": "SYMBOL",
"name": "_conditional_directives"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "consequence",
"content": {
"type": "SYMBOL",
"name": "_conditional_consequence"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "elsif_directive"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "else_directive"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "endif"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"elsif_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "else"
},
{
"type": "FIELD",
"name": "condition",
"content": {
"type": "SYMBOL",
"name": "_conditional_directives"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "consequence",
"content": {
"type": "SYMBOL",
"name": "_conditional_consequence"
}
},
{
"type": "BLANK"
}
]
}
]
},
"else_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "else"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "consequence",
"content": {
"type": "SYMBOL",
"name": "_conditional_consequence"
}
},
{
"type": "BLANK"
}
]
}
]
},
"_conditional_directives": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "ifeq_directive"
},
{
"type": "SYMBOL",
"name": "ifneq_directive"
},
{
"type": "SYMBOL",
"name": "ifdef_directive"
},
{
"type": "SYMBOL",
"name": "ifndef_directive"
}
]
},
"_conditional_consequence": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_thing"
},
{
"type": "SYMBOL",
"name": "_prefixed_recipe_line"
}
]
}
},
"ifeq_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "ifeq"
},
{
"type": "SYMBOL",
"name": "_conditional_args_cmp"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"ifneq_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "ifneq"
},
{
"type": "SYMBOL",
"name": "_conditional_args_cmp"
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"ifdef_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "ifdef"
},
{
"type": "FIELD",
"name": "variable",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"ifndef_directive": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "ifndef"
},
{
"type": "FIELD",
"name": "variable",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\r\\n]+"
}
}
]
},
"_conditional_args_cmp": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "arg0",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ","
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "arg1",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "arg0",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "FIELD",
"name": "arg1",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
}
]
}
]
},
"_variable": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "variable_reference"
},
{
"type": "SYMBOL",
"name": "substitution_reference"
},
{
"type": "SYMBOL",
"name": "automatic_variable"
}
]
},
"variable_reference": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "$$"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "SYMBOL",
"name": "_primary"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "{"
}
},
{
"type": "SYMBOL",
"name": "_primary"
},
{
"type": "STRING",
"value": "}"
}
]
}
]
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "."
}
},
"named": true,
"value": "word"
}
]
}
]
},
"substitution_reference": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "$$"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "text",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "pattern",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "STRING",
"value": "="
},
{
"type": "FIELD",
"name": "replacement",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "{"
}
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "text",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "pattern",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
},
{
"type": "STRING",
"value": "="
},
{
"type": "FIELD",
"name": "replacement",
"content": {
"type": "SYMBOL",
"name": "_primary"
}
}
]
},
{
"type": "STRING",
"value": "}"
}
]
}
]
}
]
},
"automatic_variable": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "$$"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "@"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "%"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "<"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "^"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "/"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "*"
}
}
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "@"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "%"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "<"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "^"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "/"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "*"
}
}
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "D"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "F"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "{"
}
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "@"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "%"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "<"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "^"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "/"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 1,
"content": {
"type": "STRING",
"value": "*"
}
}
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "D"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "F"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "STRING",
"value": "}"
}
]
}
]
}
]
}
]
},
"_function": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "function_call"
},
{
"type": "SYMBOL",
"name": "shell_function"
}
]
},
"function_call": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "$$"
}
]
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "FIELD",
"name": "function",
"content": {
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "subst"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "patsubst"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "strip"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "findstring"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "filter"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "filter-out"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "sort"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "word"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "words"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "wordlist"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "firstword"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "lastword"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "dir"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "notdir"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "suffix"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "basename"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "addsuffix"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "addprefix"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "join"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "wildcard"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "realpath"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "abspath"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "error"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "warning"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "info"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "origin"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "flavor"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "foreach"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "if"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "or"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "and"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "call"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "eval"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "file"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "value"
}
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "arguments"
},
{
"type": "STRING",
"value": ")"
}
]
},
"arguments": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "argument",
"content": {
"type": "SYMBOL",
"name": "text"
}
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "FIELD",
"name": "argument",
"content": {
"type": "SYMBOL",
"name": "text"
}
}
]
}
}
]
},
"shell_function": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "$$"
}
]
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "FIELD",
"name": "function",
"content": {
"type": "STRING",
"value": "shell"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_shell_command"
},
{
"type": "STRING",
"value": ")"
}
]
},
"list": {
"type": "PREC",
"value": 1,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_primary"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
{
"type": "SYMBOL",
"name": "_primary"
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[\\t ]+"
}
},
{
"type": "BLANK"
}
]
}
]
}
},
"paths": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_primary"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": ":"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": ";"
}
}
]
},
{
"type": "SYMBOL",
"name": "_primary"
}
]
}
}
]
},
"_primary": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "word"
},
{
"type": "SYMBOL",
"name": "archive"
},
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "SYMBOL",
"name": "concatenation"
},
{
"type": "SYMBOL",
"name": "string"
}
]
},
"concatenation": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_primary"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SYMBOL",
"name": "_primary"
}
}
}
]
}
},
"_name": {
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
"string": {
"type": "FIELD",
"name": "string",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\""
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_string"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "\""
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "'"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_string"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "'"
}
]
}
]
}
},
"_string": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": -1,
"content": {
"type": "PATTERN",
"value": "([^'\"$\\r\\n\\\\]|\\\\\\\\|\\\\[^\\r\\n])+"
}
}
}
]
}
},
"word": {
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[a-zA-Z0-9%\\+\\-\\.@_\\*\\?\\/]"
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
}
]
}
}
},
"archive": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "archive",
"content": {
"type": "SYMBOL",
"name": "word"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "FIELD",
"name": "members",
"content": {
"type": "SYMBOL",
"name": "list"
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": ")"
}
}
]
},
"_recipeprefix": {
"type": "STRING",
"value": "\t"
},
"_rawline": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": ".*[\\r\\n]+"
}
},
"_shell_text_without_split": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\r\\n\\\\]"
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\r\\n\\\\]"
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
}
]
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\r\\n\\\\]"
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\r\\n\\\\]"
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
}
]
}
]
},
"shell_text_with_split": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_shell_text_without_split"
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
"_shell_command": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "text"
},
"named": true,
"value": "shell_command"
},
"text": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\(\\)\\n\\r\\\\]"
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\(\\)\\n\\r\\\\]"
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
}
]
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\(\\)\\n\\r\\\\]"
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_variable"
},
{
"type": "SYMBOL",
"name": "_function"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "$$"
},
"named": true,
"value": "escape"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "//"
},
"named": true,
"value": "escape"
}
]
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "REPEAT1",
"content": {
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\$\\(\\)\\n\\r\\\\]"
},
{
"type": "ALIAS",
"content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
}
]
},
{
"type": "PATTERN",
"value": "\\\\[abtnvfrE!\"#\\$&'\\(\\)\\*,;<>\\?\\[\\\\\\]^`{\\|}~]"
},
{
"type": "PATTERN",
"value": "\\\\[0-9]{3}"
},
{
"type": "PATTERN",
"value": "\\\\[^\\n\\r]"
}
]
}
}
},
{
"type": "BLANK"
}
]
}
]
}
]
},
"comment": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": -1,
"content": {
"type": "PATTERN",
"value": "#.*"
}
}
}
},
"extras": [
{
"type": "PATTERN",
"value": "[\\s]"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "\\r?\\n|\\r"
}
]
}
},
"named": false,
"value": "\\"
},
{
"type": "SYMBOL",
"name": "comment"
}
],
"conflicts": [],
"precedences": [],
"externals": [],
"inline": [
"_targets",
"_target_pattern",
"_prerequisites_pattern",
"_prerequisites",
"_order_only_prerequisites",
"_target_or_pattern_assignment",
"_primary",
"_name",
"_string"
],
"supertypes": []
}