Diagnostics

This commit is contained in:
nub31
2025-07-23 00:43:50 +02:00
parent efe13730e7
commit 5e78f63e93
7 changed files with 193 additions and 45 deletions

View File

@@ -1,13 +1,18 @@
namespace NubLang.Tokenization;
using NubLang.Code;
public abstract class Token;
namespace NubLang.Tokenization;
public class IdentifierToken(string value) : Token
public abstract class Token(SourceFileSpan? fileSpan)
{
public SourceFileSpan? FileSpan { get; } = fileSpan;
}
public class IdentifierToken(SourceFileSpan? fileSpan, string value) : Token(fileSpan)
{
public string Value { get; } = value;
}
public class LiteralToken(LiteralKind kind, string value) : Token
public class LiteralToken(SourceFileSpan? fileSpan, LiteralKind kind, string value) : Token(fileSpan)
{
public LiteralKind Kind { get; } = kind;
public string Value { get; } = value;
@@ -21,7 +26,7 @@ public enum LiteralKind
Bool
}
public class SymbolToken(Symbol symbol) : Token
public class SymbolToken(SourceFileSpan? fileSpan, Symbol symbol) : Token(fileSpan)
{
public Symbol Symbol { get; } = symbol;
}