UNPKG

tree-sitter-nd

Version:
928 lines 18.2 kB
{ "name": "nd", "word": "variable", "rules": { "proof": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "block" }, { "type": "BLANK" } ] }, "block": { "type": "PREC_RIGHT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "guard" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "hypothesis" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_hypothesis_end" }, { "type": "BLANK" } ] }, { "type": "REPEAT1", "content": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "\n" } ] }, { "type": "SYMBOL", "name": "_nested_block" }, { "type": "SYMBOL", "name": "expression" } ] } } ] } }, "guard": { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_vars" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": "]" } ] }, "annotation": { "type": "SEQ", "members": [ { "type": "STRING", "value": "@" }, { "type": "REPEAT", "content": { "type": "CHOICE", "members": [ { "type": "PATTERN", "value": "[^<#\\n]+" }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "<" }, { "type": "PATTERN", "value": "[^>]*" }, { "type": "STRING", "value": ">" } ] } ] } } ] }, "_vars": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "variable" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "variable" } ] } }, { "type": "CHOICE", "members": [ { "type": "STRING", "value": "," }, { "type": "BLANK" } ] } ] }, "hypothesis": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "REPEAT1", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": ",\n" }, { "type": "SYMBOL", "name": "expression" } ] } } ] }, { "type": "SYMBOL", "name": "expression" } ] }, { "type": "CHOICE", "members": [ { "type": "STRING", "value": "," }, { "type": "BLANK" } ] }, { "type": "STRING", "value": "\n" }, { "type": "SYMBOL", "name": "_hypothesis_end" } ] }, "_hypothesis_end": { "type": "TOKEN", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "___" }, { "type": "REPEAT", "content": { "type": "STRING", "value": "_" } } ] } }, "comment": { "type": "TOKEN", "content": { "type": "PREC", "value": 0, "content": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "#" }, { "type": "PATTERN", "value": ".*" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "/*" }, { "type": "PATTERN", "value": "[^*]*\\*+([^\\/*][^*]*\\*+)*" }, { "type": "STRING", "value": "/" } ] } ] } } }, "_nested_block": { "type": "SEQ", "members": [ { "type": "STRING", "value": "{" }, { "type": "SYMBOL", "name": "block" }, { "type": "STRING", "value": "}" } ] }, "expression": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_term" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "annotation" }, { "type": "BLANK" } ] } ] }, "_term": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "variable" }, { "type": "SYMBOL", "name": "function" }, { "type": "SYMBOL", "name": "true" }, { "type": "SYMBOL", "name": "false" }, { "type": "SYMBOL", "name": "not" }, { "type": "SYMBOL", "name": "and" }, { "type": "SYMBOL", "name": "or" }, { "type": "SYMBOL", "name": "implies" }, { "type": "SYMBOL", "name": "iff" }, { "type": "SYMBOL", "name": "forall" }, { "type": "SYMBOL", "name": "exists" }, { "type": "SYMBOL", "name": "_group" }, { "type": "SYMBOL", "name": "_universal_group" } ] }, "function": { "type": "PREC_RIGHT", "value": 8, "content": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "function_name" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_term" }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "SYMBOL", "name": "_TF_func_name" }, "named": true, "value": "function_name" }, { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_term" }, { "type": "STRING", "value": ")" } ] } ] } }, "not": { "type": "PREC_RIGHT", "value": 7, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_not_sym" }, { "type": "SYMBOL", "name": "_term" } ] } }, "and": { "type": "PREC_LEFT", "value": 5, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_term" }, { "type": "SYMBOL", "name": "_and_sym" }, { "type": "SYMBOL", "name": "_term" } ] } }, "or": { "type": "PREC_LEFT", "value": 4, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_term" }, { "type": "SYMBOL", "name": "_or_sym" }, { "type": "SYMBOL", "name": "_term" } ] } }, "implies": { "type": "PREC_RIGHT", "value": 3, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_term" }, { "type": "SYMBOL", "name": "_implies_sym" }, { "type": "SYMBOL", "name": "_term" } ] } }, "iff": { "type": "PREC_RIGHT", "value": 2, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_term" }, { "type": "SYMBOL", "name": "_iff_sym" }, { "type": "SYMBOL", "name": "_term" } ] } }, "forall": { "type": "PREC_LEFT", "value": 6, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_forall_sym" }, { "type": "SYMBOL", "name": "variable" }, { "type": "SYMBOL", "name": "_term" } ] } }, "exists": { "type": "PREC_LEFT", "value": 6, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_exists_sym" }, { "type": "SYMBOL", "name": "variable" }, { "type": "SYMBOL", "name": "_term" } ] } }, "_group": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_term" }, { "type": "STRING", "value": ")" } ] }, "_universal_group": { "type": "PREC_RIGHT", "value": 1, "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "." }, { "type": "SYMBOL", "name": "_term" } ] } }, "variable": { "type": "TOKEN", "content": { "type": "CHOICE", "members": [ { "type": "PATTERN", "value": "[a-uw-z]" }, { "type": "PATTERN", "value": "[a-z]\\w*" } ] } }, "function_name": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_function_name" }, { "type": "SYMBOL", "name": "_reserved_function_name" } ] }, "_function_name": { "type": "TOKEN", "content": { "type": "PATTERN", "value": "[A-Z]\\w*" } }, "_reserved_function_name": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "A" }, { "type": "STRING", "value": "E" } ] }, "_TF_func_name": { "type": "PREC_DYNAMIC", "value": 12, "content": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "T" }, { "type": "STRING", "value": "F" } ] } }, "true": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "T" }, { "type": "STRING", "value": "1" }, { "type": "STRING", "value": "⊤" } ] }, "false": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "F" }, { "type": "STRING", "value": "0" }, { "type": "STRING", "value": "⊥" } ] }, "_not_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "-" }, { "type": "STRING", "value": "!" }, { "type": "STRING", "value": "~" }, { "type": "STRING", "value": "¬" } ] }, "_and_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "^" }, { "type": "STRING", "value": "&" }, { "type": "STRING", "value": "∧" } ] }, "_or_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "_" }, { "type": "STRING", "value": "|" }, { "type": "STRING", "value": "v" }, { "type": "STRING", "value": "∨" } ] }, "_implies_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "->" }, { "type": "STRING", "value": "=>" }, { "type": "STRING", "value": "→" }, { "type": "STRING", "value": "⇒" } ] }, "_iff_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "<->" }, { "type": "STRING", "value": "<=>" }, { "type": "STRING", "value": "↔" }, { "type": "STRING", "value": "⇔" }, { "type": "STRING", "value": "≡" } ] }, "_forall_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "A" }, { "type": "STRING", "value": "∀" } ] }, "_exists_sym": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "E" }, { "type": "STRING", "value": "∃" } ] }, "_universal_sep": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "." }, { "type": "STRING", "value": "$" } ] } }, "extras": [ { "type": "SYMBOL", "name": "comment" }, { "type": "PATTERN", "value": "\\s" } ], "conflicts": [ [ "function_name", "_forall_sym" ], [ "function_name", "_exists_sym" ], [ "_TF_func_name", "true" ], [ "_TF_func_name", "false" ], [ "hypothesis", "block" ] ], "externals": [], "inline": [ "_reserved_function_name" ] }