#[repr(u16)]pub enum ClojureSyntaxKind {
Show 31 variants
Whitespace = 0,
Newline = 1,
Comment = 2,
StringLiteral = 3,
CharacterLiteral = 4,
NumberLiteral = 5,
BooleanLiteral = 6,
NilLiteral = 7,
KeywordLiteral = 8,
Symbol = 9,
Keyword = 10,
ListStart = 11,
ListEnd = 12,
VectorStart = 13,
VectorEnd = 14,
MapStart = 15,
MapEnd = 16,
SetStart = 17,
Quote = 18,
Unquote = 19,
UnquoteSplice = 20,
Deref = 21,
Meta = 22,
Dispatch = 23,
ReaderMacro = 24,
RegexLiteral = 25,
AnonFnStart = 26,
AnonFnArg = 27,
SourceFile = 28,
Error = 29,
Eof = 30,
}Expand description
Represents all possible syntax kinds in the Clojure programming language.
This enum defines the fundamental building blocks of Clojure syntax, including trivia, literals, identifiers, collections, special forms, reader macros, and composite nodes.
Variants§
Whitespace = 0
Whitespace characters (spaces, tabs)
Newline = 1
Newline characters
Comment = 2
Comments (both single-line and multi-line)
StringLiteral = 3
String literals (e.g., “hello”)
CharacterLiteral = 4
Character literals (e.g., \a)
NumberLiteral = 5
Number literals (integer and floating-point)
BooleanLiteral = 6
Boolean literals (true, false)
NilLiteral = 7
Nil literal
KeywordLiteral = 8
Keyword literals (e.g., :keyword)
Symbol = 9
Symbol identifiers (e.g., variable names, function names)
Keyword = 10
Keyword identifiers (e.g., :keyword)
ListStart = 11
List start delimiter: (
ListEnd = 12
List end delimiter: )
VectorStart = 13
Vector start delimiter: [
VectorEnd = 14
Vector end delimiter: ]
MapStart = 15
Map start delimiter: {
MapEnd = 16
Map end delimiter: }
SetStart = 17
Set start delimiter: #{
Quote = 18
Quote form (e.g., ’expr)
Unquote = 19
Unquote form (e.g., ~expr)
UnquoteSplice = 20
Unquote-splicing form (e.g., ~@expr)
Deref = 21
Deref form (e.g., @expr)
Meta = 22
Metadata form (e.g., ^metadata expr)
Dispatch = 23
Dispatch macro (e.g., #)
ReaderMacro = 24
Reader macro form (e.g., #tag expr)
RegexLiteral = 25
Regular expression literals (e.g., #“pattern”)
AnonFnStart = 26
Anonymous function start delimiter: #(
AnonFnArg = 27
Anonymous function argument (e.g., %1, %2, etc.)
SourceFile = 28
Root node of the source file
Error = 29
Error token
Eof = 30
End of file marker
Trait Implementations§
Source§impl Clone for ClojureSyntaxKind
impl Clone for ClojureSyntaxKind
Source§fn clone(&self) -> ClojureSyntaxKind
fn clone(&self) -> ClojureSyntaxKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more