Sort NodeKind members in different categories

This commit is contained in:
Sam Vervaeck 2024-07-10 16:15:16 +02:00
parent 2a257275e8
commit 560c689fc7
Signed by: samvv
SSH key fingerprint: SHA256:dIg0ywU1OP+ZYifrYxy8c5esO72cIKB+4/9wkZj1VaY

View file

@ -88,104 +88,134 @@ public:
}; };
enum class NodeKind { enum class NodeKind {
VBar,
Equals, // Plain tokens
Assignment,
At,
Colon, Colon,
Comma, Comma,
CustomOperator,
DoKeyword,
Dot, Dot,
DotDot, DotDot,
Tilde, Equals,
At, Identifier,
DoKeyword, IdentifierAlt,
LParen,
RParen,
LBracket,
RBracket,
LBrace, LBrace,
RBrace, LBracket,
LParen,
RArrow, RArrow,
RArrowAlt, RArrowAlt,
RBrace,
RBracket,
RParen,
Tilde,
VBar,
WrappedOperator,
// Keywords
ClassKeyword,
ElifKeyword,
ElseKeyword,
EnumKeyword,
ForeignKeyword,
IfKeyword,
InstanceKeyword,
LetKeyword, LetKeyword,
MatchKeyword,
ModKeyword,
MutKeyword, MutKeyword,
PubKeyword, PubKeyword,
ForeignKeyword,
TypeKeyword,
ReturnKeyword, ReturnKeyword,
ModKeyword,
StructKeyword, StructKeyword,
EnumKeyword, TypeKeyword,
ClassKeyword,
InstanceKeyword, // Virtual tokens
ElifKeyword,
IfKeyword,
ElseKeyword,
MatchKeyword,
Invalid,
EndOfFile,
BlockStart, BlockStart,
BlockEnd, BlockEnd,
LineFoldEnd, LineFoldEnd,
CustomOperator, EndOfFile,
Assignment, Invalid,
// Literal tokens
StringLiteral, StringLiteral,
IntegerLiteral, IntegerLiteral,
Identifier,
IdentifierAlt, // Annotations
WrappedOperator,
ExpressionAnnotation, ExpressionAnnotation,
TypeAssertAnnotation, TypeAssertAnnotation,
// Constraint expressions
TypeclassConstraintExpression, TypeclassConstraintExpression,
EqualityConstraintExpression, EqualityConstraintExpression,
RecordTypeExpressionField,
RecordTypeExpression, RecordTypeExpression,
QualifiedTypeExpression,
ReferenceTypeExpression, // Type expressions
ArrowTypeExpression,
AppTypeExpression, AppTypeExpression,
VarTypeExpression, ArrowTypeExpression,
NestedTypeExpression, NestedTypeExpression,
QualifiedTypeExpression,
RecordTypeExpressionField,
ReferenceTypeExpression,
TupleTypeExpression, TupleTypeExpression,
BindPattern, VarTypeExpression,
LiteralPattern,
RecordPatternField, RecordPatternField,
RecordPattern,
// Patterns
BindPattern,
ListPattern,
LiteralPattern,
NamedRecordPattern, NamedRecordPattern,
NamedTuplePattern, NamedTuplePattern,
TuplePattern,
NestedPattern, NestedPattern,
ListPattern, RecordPattern,
ReferenceExpression, TuplePattern,
MatchCase, MatchCase,
MatchExpression,
BlockExpression,
MemberExpression,
TupleExpression,
NestedExpression,
LiteralExpression,
CallExpression,
InfixExpression,
PrefixExpression,
RecordExpressionField, RecordExpressionField,
RecordExpression,
ReturnExpression,
IfExpression,
IfExpressionPart, IfExpressionPart,
// Expressions
BlockExpression,
CallExpression,
IfExpression,
InfixExpression,
LiteralExpression,
MatchExpression,
MemberExpression,
NestedExpression,
PrefixExpression,
RecordExpression,
ReferenceExpression,
ReturnExpression,
TupleExpression,
TypeAssert, TypeAssert,
Parameter, Parameter,
// Bodies of a let-declaration or function declaration
LetBlockBody, LetBlockBody,
LetExprBody, LetExprBody,
// Function declarations
PrefixFunctionDeclaration, PrefixFunctionDeclaration,
InfixFunctionDeclaration, InfixFunctionDeclaration,
SuffixFunctionDeclaration, SuffixFunctionDeclaration,
NamedFunctionDeclaration, NamedFunctionDeclaration,
VariableDeclaration,
RecordDeclarationField, RecordDeclarationField,
RecordDeclaration,
VariantDeclaration,
TupleVariantDeclarationMember, TupleVariantDeclarationMember,
RecordVariantDeclarationMember, RecordVariantDeclarationMember,
// Other declarations
ClassDeclaration, ClassDeclaration,
InstanceDeclaration, InstanceDeclaration,
RecordDeclaration,
VariableDeclaration,
VariantDeclaration,
SourceFile, SourceFile,
}; };