1 #[derive(Debug, PartialEq, Eq, Clone, Copy, Hash, PartialOrd, Ord)] 2 #[allow(non_camel_case_types)] 3 #[repr(u16)] 4 pub enum SyntaxKind { 5 ERROR = 0, 6 MISSING, 7 8 WHITESPACE, 9 COMMENT, 10 L_CURLY, 11 R_CURLY, 12 L_BRACK, 13 R_BRACK, 14 L_PAREN, 15 R_PAREN, 16 PARAMETER, 17 COMMA, 18 EQUALITY_SIGN, 19 WORD, 20 DOLLAR, 21 GENERIC_COMMAND_NAME, 22 BEGIN_ENVIRONMENT_NAME, 23 END_ENVIRONMENT_NAME, 24 BEGIN_EQUATION_NAME, 25 END_EQUATION_NAME, 26 PART_NAME, 27 CHAPTER_NAME, 28 SECTION_NAME, 29 SUBSECTION_NAME, 30 SUBSUBSECTION_NAME, 31 PARAGRAPH_NAME, 32 SUBPARAGRAPH_NAME, 33 ENUM_ITEM_NAME, 34 CAPTION_NAME, 35 CITATION_NAME, 36 PACKAGE_INCLUDE_NAME, 37 CLASS_INCLUDE_NAME, 38 LATEX_INCLUDE_NAME, 39 BIBLATEX_INCLUDE_NAME, 40 BIBTEX_INCLUDE_NAME, 41 GRAPHICS_INCLUDE_NAME, 42 SVG_INCLUDE_NAME, 43 INKSCAPE_INCLUDE_NAME, 44 VERBATIM_INCLUDE_NAME, 45 IMPORT_NAME, 46 LABEL_DEFINITION_NAME, 47 LABEL_REFERENCE_NAME, 48 LABEL_REFERENCE_RANGE_NAME, 49 LABEL_NUMBER_NAME, 50 COMMAND_DEFINITION_NAME, 51 MATH_OPERATOR_NAME, 52 GLOSSARY_ENTRY_DEFINITION_NAME, 53 GLOSSARY_ENTRY_REFERENCE_NAME, 54 ACRONYM_DEFINITION_NAME, 55 ACRONYM_DECLARATION_NAME, 56 ACRONYM_REFERENCE_NAME, 57 THEOREM_DEFINITION_NAME, 58 COLOR_REFERENCE_NAME, 59 COLOR_DEFINITION_NAME, 60 COLOR_SET_DEFINITION_NAME, 61 TIKZ_LIBRARY_IMPORT_NAME, 62 ENVIRONMENT_DEFINIITION_NAME, 63 64 PREAMBLE, 65 TEXT, 66 KEY, 67 VALUE, 68 KEY_VALUE_PAIR, 69 KEY_VALUE_BODY, 70 CURLY_GROUP, 71 CURLY_GROUP_WORD, 72 CURLY_GROUP_WORD_LIST, 73 CURLY_GROUP_COMMAND, 74 CURLY_GROUP_KEY_VALUE, 75 BRACK_GROUP, 76 BRACK_GROUP_WORD, 77 BRACK_GROUP_KEY_VALUE, 78 PAREN_GROUP, 79 MIXED_GROUP, 80 GENERIC_COMMAND, 81 ENVIRONMENT, 82 BEGIN, 83 END, 84 EQUATION, 85 PART, 86 CHAPTER, 87 SECTION, 88 SUBSECTION, 89 SUBSUBSECTION, 90 PARAGRAPH, 91 SUBPARAGRAPH, 92 ENUM_ITEM, 93 FORMULA, 94 CAPTION, 95 CITATION, 96 PACKAGE_INCLUDE, 97 CLASS_INCLUDE, 98 LATEX_INCLUDE, 99 BIBLATEX_INCLUDE, 100 BIBTEX_INCLUDE, 101 GRAPHICS_INCLUDE, 102 SVG_INCLUDE, 103 INKSCAPE_INCLUDE, 104 VERBATIM_INCLUDE, 105 IMPORT, 106 LABEL_DEFINITION, 107 LABEL_REFERENCE, 108 LABEL_REFERENCE_RANGE, 109 LABEL_NUMBER, 110 COMMAND_DEFINITION, 111 MATH_OPERATOR, 112 GLOSSARY_ENTRY_DEFINITION, 113 GLOSSARY_ENTRY_REFERENCE, 114 ACRONYM_DEFINITION, 115 ACRONYM_DECLARATION, 116 ACRONYM_REFERENCE, 117 THEOREM_DEFINITION, 118 COLOR_REFERENCE, 119 COLOR_DEFINITION, 120 COLOR_SET_DEFINITION, 121 TIKZ_LIBRARY_IMPORT, 122 ENVIRONMENT_DEFINITION, 123 ROOT, 124 } 125 126 impl SyntaxKind { is_command_name(&self) -> bool127 pub fn is_command_name(&self) -> bool { 128 use SyntaxKind::*; 129 matches!( 130 self, 131 GENERIC_COMMAND_NAME 132 | BEGIN_ENVIRONMENT_NAME 133 | END_ENVIRONMENT_NAME 134 | BEGIN_EQUATION_NAME 135 | END_EQUATION_NAME 136 | PART_NAME 137 | CHAPTER_NAME 138 | SECTION_NAME 139 | SUBSECTION_NAME 140 | SUBSUBSECTION_NAME 141 | PARAGRAPH_NAME 142 | SUBPARAGRAPH_NAME 143 | ENUM_ITEM_NAME 144 | CAPTION_NAME 145 | CITATION_NAME 146 | PACKAGE_INCLUDE_NAME 147 | CLASS_INCLUDE_NAME 148 | LATEX_INCLUDE_NAME 149 | BIBLATEX_INCLUDE_NAME 150 | BIBTEX_INCLUDE_NAME 151 | GRAPHICS_INCLUDE_NAME 152 | SVG_INCLUDE_NAME 153 | INKSCAPE_INCLUDE_NAME 154 | VERBATIM_INCLUDE_NAME 155 | IMPORT_NAME 156 | LABEL_DEFINITION_NAME 157 | LABEL_REFERENCE_NAME 158 | LABEL_REFERENCE_RANGE_NAME 159 | LABEL_NUMBER_NAME 160 | COMMAND_DEFINITION_NAME 161 | MATH_OPERATOR_NAME 162 | GLOSSARY_ENTRY_DEFINITION_NAME 163 | GLOSSARY_ENTRY_REFERENCE_NAME 164 | ACRONYM_DEFINITION_NAME 165 | ACRONYM_DECLARATION_NAME 166 | ACRONYM_REFERENCE_NAME 167 | THEOREM_DEFINITION_NAME 168 | COLOR_REFERENCE_NAME 169 | COLOR_DEFINITION_NAME 170 | COLOR_SET_DEFINITION_NAME 171 | TIKZ_LIBRARY_IMPORT_NAME 172 ) 173 } 174 } 175 176 impl From<SyntaxKind> for cstree::SyntaxKind { from(kind: SyntaxKind) -> Self177 fn from(kind: SyntaxKind) -> Self { 178 Self(kind as u16) 179 } 180 } 181