tree-sitter-commonlisp 0.3.3

Common Lisp grammar for the tree-sitter parsing library
Documentation
{
  "name": "commonlisp",
  "rules": {
    "source": {
      "type": "REPEAT",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SYMBOL",
            "name": "_form"
          },
          {
            "type": "SYMBOL",
            "name": "_gap"
          }
        ]
      }
    },
    "_gap": {
      "type": "CHOICE",
      "members": [
        {
          "type": "SYMBOL",
          "name": "_ws"
        },
        {
          "type": "SYMBOL",
          "name": "comment"
        },
        {
          "type": "SYMBOL",
          "name": "dis_expr"
        }
      ]
    },
    "_ws": {
      "type": "TOKEN",
      "content": {
        "type": "REPEAT1",
        "content": {
          "type": "PATTERN",
          "value": "[\\f\\n\\r\\t \\u000B\\u001C\\u001D\\u001E\\u001F\\u2028\\u2029\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2008\\u2009\\u200a\\u205f\\u3000]"
        }
      }
    },
    "comment": {
      "type": "TOKEN",
      "content": {
        "type": "PATTERN",
        "value": "(;|#!).*\\n?"
      }
    },
    "dis_expr": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#_"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "_form": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": "#"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "SYMBOL",
              "name": "num_lit"
            },
            {
              "type": "SYMBOL",
              "name": "fancy_literal"
            },
            {
              "type": "SYMBOL",
              "name": "vec_lit"
            },
            {
              "type": "SYMBOL",
              "name": "kwd_lit"
            },
            {
              "type": "ALIAS",
              "content": {
                "type": "SEQ",
                "members": [
                  {
                    "type": "FIELD",
                    "name": "open",
                    "content": {
                      "type": "STRING",
                      "value": "#"
                    }
                  },
                  {
                    "type": "CHOICE",
                    "members": [
                      {
                        "type": "PATTERN",
                        "value": "\\d+[aA]"
                      },
                      {
                        "type": "BLANK"
                      }
                    ]
                  },
                  {
                    "type": "SYMBOL",
                    "name": "list_lit"
                  }
                ]
              },
              "named": true,
              "value": "vec_lit"
            },
            {
              "type": "SYMBOL",
              "name": "str_lit"
            },
            {
              "type": "SYMBOL",
              "name": "self_referential_reader_macro"
            },
            {
              "type": "SYMBOL",
              "name": "char_lit"
            },
            {
              "type": "SYMBOL",
              "name": "nil_lit"
            },
            {
              "type": "SYMBOL",
              "name": "path_lit"
            },
            {
              "type": "SYMBOL",
              "name": "sym_lit"
            },
            {
              "type": "SYMBOL",
              "name": "package_lit"
            },
            {
              "type": "SYMBOL",
              "name": "list_lit"
            },
            {
              "type": "SYMBOL",
              "name": "set_lit"
            },
            {
              "type": "SYMBOL",
              "name": "read_cond_lit"
            },
            {
              "type": "SYMBOL",
              "name": "splicing_read_cond_lit"
            },
            {
              "type": "SYMBOL",
              "name": "var_quoting_lit"
            },
            {
              "type": "SYMBOL",
              "name": "quoting_lit"
            },
            {
              "type": "SYMBOL",
              "name": "syn_quoting_lit"
            },
            {
              "type": "SYMBOL",
              "name": "unquote_splicing_lit"
            },
            {
              "type": "SYMBOL",
              "name": "unquoting_lit"
            },
            {
              "type": "SYMBOL",
              "name": "include_reader_macro"
            },
            {
              "type": "SYMBOL",
              "name": "complex_num_lit"
            },
            {
              "type": "STRING",
              "value": "."
            }
          ]
        }
      ]
    },
    "num_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "TOKEN",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "PATTERN",
                    "value": "[+-]"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "#x"
                          },
                          {
                            "type": "STRING",
                            "value": "#X"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "PATTERN",
                            "value": "[+-]"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9a-fA-F]"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "#o"
                          },
                          {
                            "type": "STRING",
                            "value": "#O"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "PATTERN",
                            "value": "[+-]"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-7]"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "STRING",
                        "value": "#"
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9]"
                        }
                      },
                      {
                        "type": "PATTERN",
                        "value": "[rR]"
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9a-zA-Z]"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "STRING",
                            "value": "#b"
                          },
                          {
                            "type": "STRING",
                            "value": "#B"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "PATTERN",
                            "value": "[+-]"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-1]"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9]"
                        }
                      },
                      {
                        "type": "STRING",
                        "value": "/"
                      },
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9]"
                        }
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9]"
                        }
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "STRING",
                                "value": "."
                              },
                              {
                                "type": "REPEAT",
                                "content": {
                                  "type": "PATTERN",
                                  "value": "[0-9]"
                                }
                              }
                            ]
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "SEQ",
                            "members": [
                              {
                                "type": "PATTERN",
                                "value": "[eEsSfFdDlL]"
                              },
                              {
                                "type": "CHOICE",
                                "members": [
                                  {
                                    "type": "PATTERN",
                                    "value": "[+-]"
                                  },
                                  {
                                    "type": "BLANK"
                                  }
                                ]
                              },
                              {
                                "type": "REPEAT1",
                                "content": {
                                  "type": "PATTERN",
                                  "value": "[0-9]"
                                }
                              }
                            ]
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "SEQ",
                    "members": [
                      {
                        "type": "REPEAT1",
                        "content": {
                          "type": "PATTERN",
                          "value": "[0-9]"
                        }
                      },
                      {
                        "type": "CHOICE",
                        "members": [
                          {
                            "type": "PATTERN",
                            "value": "[MN]"
                          },
                          {
                            "type": "BLANK"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "PATTERN",
              "value": "[sSfFdDlL]"
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "kwd_lit": {
      "type": "PREC",
      "value": 4,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "STRING",
                "value": ":"
              },
              {
                "type": "STRING",
                "value": "::"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "kwd_symbol"
          }
        ]
      }
    },
    "str_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "\""
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "IMMEDIATE_TOKEN",
                "content": {
                  "type": "PREC",
                  "value": 1,
                  "content": {
                    "type": "PATTERN",
                    "value": "[^\\\\~\"]+"
                  }
                }
              },
              {
                "type": "IMMEDIATE_TOKEN",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "PATTERN",
                      "value": "\\\\."
                    }
                  ]
                }
              },
              {
                "type": "SYMBOL",
                "name": "format_specifier"
              }
            ]
          }
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "STRING",
              "value": "~"
            },
            {
              "type": "BLANK"
            }
          ]
        },
        {
          "type": "STRING",
          "value": "\""
        }
      ]
    },
    "char_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "STRING",
          "value": "#"
        },
        {
          "type": "PATTERN",
          "value": "\\\\([^\\f\\n\\r\\t ()]+|[()])"
        }
      ]
    },
    "nil_lit": {
      "type": "TOKEN",
      "content": {
        "type": "STRING",
        "value": "nil"
      }
    },
    "bool_lit": {
      "type": "TOKEN",
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "STRING",
            "value": "false"
          },
          {
            "type": "STRING",
            "value": "true"
          }
        ]
      }
    },
    "sym_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "TOKEN",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "PATTERN",
                "value": "[^:\\f\\n\\r\\t ()\\[\\]{}\"^;`\\\\,#'\\u000B\\u001C\\u001D\\u001E\\u001F\\u2028\\u2029\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2008\\u2009\\u200a\\u205f\\u3000]"
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "PATTERN",
                      "value": "[^:\\f\\n\\r\\t ()\\[\\]{}\"^;`\\\\,#'\\u000B\\u001C\\u001D\\u001E\\u001F\\u2028\\u2029\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2008\\u2009\\u200a\\u205f\\u3000]"
                    },
                    {
                      "type": "PATTERN",
                      "value": "[#']"
                    }
                  ]
                }
              }
            ]
          }
        }
      ]
    },
    "_metadata_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "FIELD",
              "name": "meta",
              "content": {
                "type": "SYMBOL",
                "name": "meta_lit"
              }
            },
            {
              "type": "FIELD",
              "name": "old_meta",
              "content": {
                "type": "SYMBOL",
                "name": "old_meta_lit"
              }
            }
          ]
        },
        {
          "type": "CHOICE",
          "members": [
            {
              "type": "REPEAT",
              "content": {
                "type": "SYMBOL",
                "name": "_gap"
              }
            },
            {
              "type": "BLANK"
            }
          ]
        }
      ]
    },
    "meta_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "^"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "read_cond_lit"
              },
              {
                "type": "SYMBOL",
                "name": "map_lit"
              },
              {
                "type": "SYMBOL",
                "name": "str_lit"
              },
              {
                "type": "SYMBOL",
                "name": "kwd_lit"
              },
              {
                "type": "SYMBOL",
                "name": "sym_lit"
              }
            ]
          }
        }
      ]
    },
    "old_meta_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#^"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "read_cond_lit"
              },
              {
                "type": "SYMBOL",
                "name": "map_lit"
              },
              {
                "type": "SYMBOL",
                "name": "str_lit"
              },
              {
                "type": "SYMBOL",
                "name": "kwd_lit"
              },
              {
                "type": "SYMBOL",
                "name": "sym_lit"
              }
            ]
          }
        }
      ]
    },
    "list_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_list_lit"
        }
      ]
    },
    "_bare_list_lit": {
      "type": "CHOICE",
      "members": [
        {
          "type": "PREC",
          "value": 5,
          "content": {
            "type": "SYMBOL",
            "name": "defun"
          }
        },
        {
          "type": "PREC",
          "value": 5,
          "content": {
            "type": "SYMBOL",
            "name": "loop_macro"
          }
        },
        {
          "type": "SEQ",
          "members": [
            {
              "type": "FIELD",
              "name": "open",
              "content": {
                "type": "STRING",
                "value": "("
              }
            },
            {
              "type": "REPEAT",
              "content": {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "FIELD",
                    "name": "value",
                    "content": {
                      "type": "SYMBOL",
                      "name": "_form"
                    }
                  },
                  {
                    "type": "SYMBOL",
                    "name": "_gap"
                  }
                ]
              }
            },
            {
              "type": "FIELD",
              "name": "close",
              "content": {
                "type": "STRING",
                "value": ")"
              }
            }
          ]
        }
      ]
    },
    "map_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_map_lit"
        }
      ]
    },
    "_bare_map_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "open",
          "content": {
            "type": "STRING",
            "value": "{"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "FIELD",
                "name": "value",
                "content": {
                  "type": "SYMBOL",
                  "name": "_form"
                }
              },
              {
                "type": "SYMBOL",
                "name": "_gap"
              }
            ]
          }
        },
        {
          "type": "FIELD",
          "name": "close",
          "content": {
            "type": "STRING",
            "value": "}"
          }
        }
      ]
    },
    "vec_lit": {
      "type": "PREC",
      "value": 5,
      "content": {
        "type": "CHOICE",
        "members": [
          {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "open",
                "content": {
                  "type": "CHOICE",
                  "members": [
                    {
                      "type": "STRING",
                      "value": "#0A"
                    },
                    {
                      "type": "STRING",
                      "value": "#0a"
                    }
                  ]
                }
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "num_lit"
                  },
                  {
                    "type": "SYMBOL",
                    "name": "complex_num_lit"
                  }
                ]
              }
            ]
          },
          {
            "type": "SEQ",
            "members": [
              {
                "type": "FIELD",
                "name": "open",
                "content": {
                  "type": "STRING",
                  "value": "#"
                }
              },
              {
                "type": "CHOICE",
                "members": [
                  {
                    "type": "SYMBOL",
                    "name": "array_dimension"
                  },
                  {
                    "type": "BLANK"
                  }
                ]
              },
              {
                "type": "SYMBOL",
                "name": "list_lit"
              }
            ]
          }
        ]
      }
    },
    "_bare_vec_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "open",
          "content": {
            "type": "STRING",
            "value": "["
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "FIELD",
                "name": "value",
                "content": {
                  "type": "SYMBOL",
                  "name": "_form"
                }
              },
              {
                "type": "SYMBOL",
                "name": "_gap"
              }
            ]
          }
        },
        {
          "type": "FIELD",
          "name": "close",
          "content": {
            "type": "STRING",
            "value": "]"
          }
        }
      ]
    },
    "set_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_set_lit"
        }
      ]
    },
    "_bare_set_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#"
          }
        },
        {
          "type": "FIELD",
          "name": "open",
          "content": {
            "type": "STRING",
            "value": "{"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "FIELD",
                "name": "value",
                "content": {
                  "type": "SYMBOL",
                  "name": "_form"
                }
              },
              {
                "type": "SYMBOL",
                "name": "_gap"
              }
            ]
          }
        },
        {
          "type": "FIELD",
          "name": "close",
          "content": {
            "type": "STRING",
            "value": "}"
          }
        }
      ]
    },
    "anon_fn_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_list_lit"
        }
      ]
    },
    "regex_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#"
          }
        },
        {
          "type": "TOKEN",
          "content": {
            "type": "SEQ",
            "members": [
              {
                "type": "STRING",
                "value": "\""
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "PATTERN",
                  "value": "[^\"\\\\]"
                }
              },
              {
                "type": "REPEAT",
                "content": {
                  "type": "SEQ",
                  "members": [
                    {
                      "type": "STRING",
                      "value": "\\"
                    },
                    {
                      "type": "PATTERN",
                      "value": "."
                    },
                    {
                      "type": "REPEAT",
                      "content": {
                        "type": "PATTERN",
                        "value": "[^\"\\\\]"
                      }
                    }
                  ]
                }
              },
              {
                "type": "STRING",
                "value": "\""
              }
            ]
          }
        }
      ]
    },
    "read_cond_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#?"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_ws"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_list_lit"
        }
      ]
    },
    "splicing_read_cond_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#?@"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_ws"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_list_lit"
        }
      ]
    },
    "auto_res_mark": {
      "type": "TOKEN",
      "content": {
        "type": "STRING",
        "value": "::"
      }
    },
    "ns_map_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#"
          }
        },
        {
          "type": "FIELD",
          "name": "prefix",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "auto_res_mark"
              },
              {
                "type": "SYMBOL",
                "name": "kwd_lit"
              }
            ]
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "SYMBOL",
          "name": "_bare_map_lit"
        }
      ]
    },
    "var_quoting_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#'"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "sym_val_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "##"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "sym_lit"
          }
        }
      ]
    },
    "evaling_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#="
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "list_lit"
              },
              {
                "type": "SYMBOL",
                "name": "read_cond_lit"
              },
              {
                "type": "SYMBOL",
                "name": "sym_lit"
              }
            ]
          }
        }
      ]
    },
    "tagged_or_ctor_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "#"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "tag",
          "content": {
            "type": "SYMBOL",
            "name": "sym_lit"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "derefing_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "@"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "quoting_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "'"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "syn_quoting_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": "`"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "unquote_splicing_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_metadata_lit"
          }
        },
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": ",@"
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "unquoting_lit": {
      "type": "SEQ",
      "members": [
        {
          "type": "FIELD",
          "name": "marker",
          "content": {
            "type": "STRING",
            "value": ","
          }
        },
        {
          "type": "REPEAT",
          "content": {
            "type": "SYMBOL",
            "name": "_gap"
          }
        },
        {
          "type": "FIELD",
          "name": "value",
          "content": {
            "type": "SYMBOL",
            "name": "_form"
          }
        }
      ]
    },
    "block_comment": {
      "type": "TOKEN",
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "STRING",
            "value": "#|"
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "CHOICE",
              "members": [
                {
                  "type": "PATTERN",
                  "value": "[^|]"
                },
                {
                  "type": "PATTERN",
                  "value": "\\|[^#]"
                }
              ]
            }
          },
          {
            "type": "STRING",
            "value": "|#"
          }
        ]
      }
    },
    "fancy_literal": {
      "type": "TOKEN",
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "STRING",
            "value": "|"
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "PATTERN",
              "value": "[^|]"
            }
          },
          {
            "type": "STRING",
            "value": "|"
          }
        ]
      }
    },
    "defun": {
      "type": "PREC",
      "value": 5,
      "content": {
        "type": "SEQ",
        "members": [
          {
            "type": "FIELD",
            "name": "open",
            "content": {
              "type": "STRING",
              "value": "("
            }
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_gap"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "SYMBOL",
            "name": "defun_header"
          },
          {
            "type": "CHOICE",
            "members": [
              {
                "type": "SYMBOL",
                "name": "_gap"
              },
              {
                "type": "BLANK"
              }
            ]
          },
          {
            "type": "REPEAT",
            "content": {
              "type": "CHOICE",
              "members": [
                {
                  "type": "FIELD",
                  "name": "value",
                  "content": {
                    "type": "SYMBOL",
                    "name": "_form"
                  }
                },
                {
                  "type": "SYMBOL",
                  "name": "_gap"
                }
              ]
            }
          },
          {
            "type": "FIELD",
            "name": "close",
            "content": {
              "type": "STRING",
              "value": ")"
            }
          }
        ]
      }
    },
    "_format_token": {
      "type": "CHOICE",
      "members": [
        {
          "type&quo