...
This commit is contained in:
@@ -1,6 +0,0 @@
|
|||||||
namespace NubLang.Syntax.Tokenization;
|
|
||||||
|
|
||||||
public class IdentifierToken(SourceSpan span, string value) : Token(span)
|
|
||||||
{
|
|
||||||
public string Value { get; } = value;
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
namespace NubLang.Syntax.Tokenization;
|
|
||||||
|
|
||||||
public class LiteralToken(SourceSpan span, LiteralKind kind, string value) : Token(span)
|
|
||||||
{
|
|
||||||
public LiteralKind Kind { get; } = kind;
|
|
||||||
public string Value { get; } = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum LiteralKind
|
|
||||||
{
|
|
||||||
Integer,
|
|
||||||
Float,
|
|
||||||
String,
|
|
||||||
Bool
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
namespace NubLang.Syntax.Tokenization;
|
|
||||||
|
|
||||||
public class ModifierToken(SourceSpan span, Modifier modifier) : Token(span)
|
|
||||||
{
|
|
||||||
public Modifier Modifier { get; } = modifier;
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum Modifier
|
|
||||||
{
|
|
||||||
Extern,
|
|
||||||
Export
|
|
||||||
}
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
namespace NubLang.Syntax.Tokenization;
|
|
||||||
|
|
||||||
public class SymbolToken(SourceSpan span, Symbol symbol) : Token(span)
|
|
||||||
{
|
|
||||||
public Symbol Symbol { get; } = symbol;
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum Symbol
|
|
||||||
{
|
|
||||||
Func,
|
|
||||||
Return,
|
|
||||||
If,
|
|
||||||
Else,
|
|
||||||
While,
|
|
||||||
Break,
|
|
||||||
Continue,
|
|
||||||
Colon,
|
|
||||||
OpenParen,
|
|
||||||
CloseParen,
|
|
||||||
OpenBrace,
|
|
||||||
CloseBrace,
|
|
||||||
OpenBracket,
|
|
||||||
CloseBracket,
|
|
||||||
Comma,
|
|
||||||
Period,
|
|
||||||
Assign,
|
|
||||||
Bang,
|
|
||||||
Equal,
|
|
||||||
NotEqual,
|
|
||||||
LessThan,
|
|
||||||
LessThanOrEqual,
|
|
||||||
GreaterThan,
|
|
||||||
GreaterThanOrEqual,
|
|
||||||
Plus,
|
|
||||||
Minus,
|
|
||||||
Star,
|
|
||||||
ForwardSlash,
|
|
||||||
Struct,
|
|
||||||
Caret,
|
|
||||||
Ampersand,
|
|
||||||
DoubleColon,
|
|
||||||
Namespace,
|
|
||||||
Let,
|
|
||||||
Alloc,
|
|
||||||
Calls,
|
|
||||||
Trait,
|
|
||||||
Impl,
|
|
||||||
For
|
|
||||||
}
|
|
||||||
@@ -3,4 +3,82 @@
|
|||||||
public abstract class Token(SourceSpan span)
|
public abstract class Token(SourceSpan span)
|
||||||
{
|
{
|
||||||
public SourceSpan Span { get; } = span;
|
public SourceSpan Span { get; } = span;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class IdentifierToken(SourceSpan span, string value) : Token(span)
|
||||||
|
{
|
||||||
|
public string Value { get; } = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class LiteralToken(SourceSpan span, LiteralKind kind, string value) : Token(span)
|
||||||
|
{
|
||||||
|
public LiteralKind Kind { get; } = kind;
|
||||||
|
public string Value { get; } = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum LiteralKind
|
||||||
|
{
|
||||||
|
Integer,
|
||||||
|
Float,
|
||||||
|
String,
|
||||||
|
Bool
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ModifierToken(SourceSpan span, Modifier modifier) : Token(span)
|
||||||
|
{
|
||||||
|
public Modifier Modifier { get; } = modifier;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum Modifier
|
||||||
|
{
|
||||||
|
Extern,
|
||||||
|
Export
|
||||||
|
}
|
||||||
|
|
||||||
|
public class SymbolToken(SourceSpan span, Symbol symbol) : Token(span)
|
||||||
|
{
|
||||||
|
public Symbol Symbol { get; } = symbol;
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum Symbol
|
||||||
|
{
|
||||||
|
Func,
|
||||||
|
Return,
|
||||||
|
If,
|
||||||
|
Else,
|
||||||
|
While,
|
||||||
|
Break,
|
||||||
|
Continue,
|
||||||
|
Colon,
|
||||||
|
OpenParen,
|
||||||
|
CloseParen,
|
||||||
|
OpenBrace,
|
||||||
|
CloseBrace,
|
||||||
|
OpenBracket,
|
||||||
|
CloseBracket,
|
||||||
|
Comma,
|
||||||
|
Period,
|
||||||
|
Assign,
|
||||||
|
Bang,
|
||||||
|
Equal,
|
||||||
|
NotEqual,
|
||||||
|
LessThan,
|
||||||
|
LessThanOrEqual,
|
||||||
|
GreaterThan,
|
||||||
|
GreaterThanOrEqual,
|
||||||
|
Plus,
|
||||||
|
Minus,
|
||||||
|
Star,
|
||||||
|
ForwardSlash,
|
||||||
|
Struct,
|
||||||
|
Caret,
|
||||||
|
Ampersand,
|
||||||
|
DoubleColon,
|
||||||
|
Namespace,
|
||||||
|
Let,
|
||||||
|
Alloc,
|
||||||
|
Calls,
|
||||||
|
Trait,
|
||||||
|
Impl,
|
||||||
|
For
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user