{
"name": "janet_simple",
"rules": {
"source": {
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
"comment": {
"type": "PATTERN",
"value": "#.*"
},
"_lit": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "bool_lit"
},
{
"type": "SYMBOL",
"name": "buf_lit"
},
{
"type": "SYMBOL",
"name": "kwd_lit"
},
{
"type": "SYMBOL",
"name": "long_buf_lit"
},
{
"type": "SYMBOL",
"name": "long_str_lit"
},
{
"type": "SYMBOL",
"name": "nil_lit"
},
{
"type": "SYMBOL",
"name": "num_lit"
},
{
"type": "SYMBOL",
"name": "str_lit"
},
{
"type": "SYMBOL",
"name": "sym_lit"
},
{
"type": "SYMBOL",
"name": "par_arr_lit"
},
{
"type": "SYMBOL",
"name": "sqr_arr_lit"
},
{
"type": "SYMBOL",
"name": "struct_lit"
},
{
"type": "SYMBOL",
"name": "tbl_lit"
},
{
"type": "SYMBOL",
"name": "par_tup_lit"
},
{
"type": "SYMBOL",
"name": "sqr_tup_lit"
},
{
"type": "SYMBOL",
"name": "qq_lit"
},
{
"type": "SYMBOL",
"name": "quote_lit"
},
{
"type": "SYMBOL",
"name": "short_fn_lit"
},
{
"type": "SYMBOL",
"name": "splice_lit"
},
{
"type": "SYMBOL",
"name": "unquote_lit"
}
]
},
"bool_lit": {
"type": "TOKEN",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "false"
},
{
"type": "STRING",
"value": "true"
}
]
}
},
"kwd_lit": {
"type": "PREC",
"value": 2,
"content": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ":"
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9:a-zA-Z!$%&*+\\-./<?=>@^_]"
}
}
]
}
}
},
"nil_lit": {
"type": "STRING",
"value": "nil"
},
"num_lit": {
"type": "PREC",
"value": 5,
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_dec"
},
{
"type": "SYMBOL",
"name": "_hex"
},
{
"type": "SYMBOL",
"name": "_radix"
}
]
}
},
"_dec": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
}
]
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"_hex": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "0"
},
{
"type": "STRING",
"value": "x"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9A-Fa-f]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9A-Fa-f]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9A-Fa-f]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9A-Fa-f]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
}
]
}
]
}
]
}
},
"_radix": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "2"
},
{
"type": "STRING",
"value": "3"
},
{
"type": "STRING",
"value": "4"
},
{
"type": "STRING",
"value": "5"
},
{
"type": "STRING",
"value": "6"
},
{
"type": "STRING",
"value": "7"
},
{
"type": "STRING",
"value": "8"
},
{
"type": "STRING",
"value": "9"
},
{
"type": "STRING",
"value": "10"
},
{
"type": "STRING",
"value": "11"
},
{
"type": "STRING",
"value": "12"
},
{
"type": "STRING",
"value": "13"
},
{
"type": "STRING",
"value": "14"
},
{
"type": "STRING",
"value": "15"
},
{
"type": "STRING",
"value": "16"
},
{
"type": "STRING",
"value": "17"
},
{
"type": "STRING",
"value": "18"
},
{
"type": "STRING",
"value": "19"
},
{
"type": "STRING",
"value": "20"
},
{
"type": "STRING",
"value": "21"
},
{
"type": "STRING",
"value": "22"
},
{
"type": "STRING",
"value": "23"
},
{
"type": "STRING",
"value": "24"
},
{
"type": "STRING",
"value": "25"
},
{
"type": "STRING",
"value": "26"
},
{
"type": "STRING",
"value": "27"
},
{
"type": "STRING",
"value": "28"
},
{
"type": "STRING",
"value": "29"
},
{
"type": "STRING",
"value": "30"
},
{
"type": "STRING",
"value": "31"
},
{
"type": "STRING",
"value": "32"
},
{
"type": "STRING",
"value": "33"
},
{
"type": "STRING",
"value": "34"
},
{
"type": "STRING",
"value": "35"
},
{
"type": "STRING",
"value": "36"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "r"
},
{
"type": "STRING",
"value": "R"
}
]
},
{
"type": "PATTERN",
"value": "[a-zA-Z0-9]"
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[a-zA-Z0-9]"
}
},
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "_"
}
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "&"
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
}
]
}
},
"str_lit": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\""
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\\\\"]"
},
{
"type": "PATTERN",
"value": "\\\\(.|\\n)"
}
]
}
},
{
"type": "STRING",
"value": "\""
}
]
}
},
"buf_lit": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@\""
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[^\\\\\"]"
},
{
"type": "PATTERN",
"value": "\\\\(.|\\n)"
}
]
}
},
{
"type": "STRING",
"value": "\""
}
]
}
},
"sym_lit": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[a-zA-Z!$%&*+\\-./<?=>@^_]"
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9:a-zA-Z!$%&*+\\-./<?=>@^_]"
}
}
]
}
},
"par_arr_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@("
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"sqr_arr_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@["
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": "]"
}
]
},
"struct_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
"tbl_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@{"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
"par_tup_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"sqr_tup_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_lit"
}
},
{
"type": "STRING",
"value": "]"
}
]
},
"qq_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "~"
},
{
"type": "SYMBOL",
"name": "_lit"
}
]
},
"quote_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "'"
},
{
"type": "SYMBOL",
"name": "_lit"
}
]
},
"short_fn_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "|"
},
{
"type": "SYMBOL",
"name": "_lit"
}
]
},
"splice_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "_lit"
}
]
},
"unquote_lit": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_lit"
}
]
}
},
"extras": [
{
"type": "PATTERN",
"value": "\\s|\\x0b|\\x0c|\\x00"
},
{
"type": "SYMBOL",
"name": "comment"
}
],
"conflicts": [],
"precedences": [],
"externals": [
{
"type": "SYMBOL",
"name": "long_buf_lit"
},
{
"type": "SYMBOL",
"name": "long_str_lit"
}
],
"inline": [],
"supertypes": []
}