diff --git a/src/compiler/CLI/CLI.csproj b/src/compiler/CLI/CLI.csproj index a598c50..6a0f8fe 100644 --- a/src/compiler/CLI/CLI.csproj +++ b/src/compiler/CLI/CLI.csproj @@ -10,8 +10,7 @@ - - + diff --git a/src/compiler/CLI/Program.cs b/src/compiler/CLI/Program.cs index a5c6ee6..98a2359 100644 --- a/src/compiler/CLI/Program.cs +++ b/src/compiler/CLI/Program.cs @@ -1,12 +1,12 @@ using System.Reflection; using CLI; -using Generation.QBE; -using Syntax; -using Syntax.Diagnostics; -using Syntax.Node; -using Syntax.Parsing; -using Syntax.Tokenization; -using Binder = Syntax.Binding.Binder; +using NubLang; +using NubLang.Diagnostics; +using NubLang.Generation.QBE; +using NubLang.Syntax.Node; +using NubLang.Syntax.Parsing; +using NubLang.Syntax.Tokenization; +using Binder = NubLang.Syntax.Binding.Binder; const string BIN_DIR = "bin"; const string INT_DIR = "bin-int"; @@ -207,4 +207,7 @@ async Task CreateBuiltinRuntime() return runtimePath; } -internal class RuntimeCreationException(string message) : Exception(message); \ No newline at end of file +namespace CLI +{ + internal class RuntimeCreationException(string message) : Exception(message); +} \ No newline at end of file diff --git a/src/compiler/Compiler.sln b/src/compiler/Compiler.sln index 702f726..f72e1d8 100644 --- a/src/compiler/Compiler.sln +++ b/src/compiler/Compiler.sln @@ -1,11 +1,9 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Syntax", "Syntax\Syntax.csproj", "{5047E21F-590D-4CB3-AFF3-064316485009}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NubLang", "NubLang\NubLang.csproj", "{5047E21F-590D-4CB3-AFF3-064316485009}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CLI", "CLI\CLI.csproj", "{A22F17ED-FA17-45AB-92BA-CD02C28B3524}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Generation", "Generation\Generation.csproj", "{F903F1B9-69A6-4522-B483-81A4B072C8B1}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common", "Common\Common.csproj", "{91ECE034-32D4-48E6-A905-5F95DB95A3D4}" EndProject Global @@ -22,10 +20,6 @@ Global {A22F17ED-FA17-45AB-92BA-CD02C28B3524}.Debug|Any CPU.Build.0 = Debug|Any CPU {A22F17ED-FA17-45AB-92BA-CD02C28B3524}.Release|Any CPU.ActiveCfg = Release|Any CPU {A22F17ED-FA17-45AB-92BA-CD02C28B3524}.Release|Any CPU.Build.0 = Release|Any CPU - {F903F1B9-69A6-4522-B483-81A4B072C8B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F903F1B9-69A6-4522-B483-81A4B072C8B1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F903F1B9-69A6-4522-B483-81A4B072C8B1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F903F1B9-69A6-4522-B483-81A4B072C8B1}.Release|Any CPU.Build.0 = Release|Any CPU {91ECE034-32D4-48E6-A905-5F95DB95A3D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {91ECE034-32D4-48E6-A905-5F95DB95A3D4}.Debug|Any CPU.Build.0 = Debug|Any CPU {91ECE034-32D4-48E6-A905-5F95DB95A3D4}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/src/compiler/Syntax/DefinitionTable.cs b/src/compiler/NubLang/DefinitionTable.cs similarity index 98% rename from src/compiler/Syntax/DefinitionTable.cs rename to src/compiler/NubLang/DefinitionTable.cs index d21843d..7ab652c 100644 --- a/src/compiler/Syntax/DefinitionTable.cs +++ b/src/compiler/NubLang/DefinitionTable.cs @@ -1,6 +1,6 @@ -using Syntax.Node; +using NubLang.Syntax.Node; -namespace Syntax; +namespace NubLang; public sealed class DefinitionTable { diff --git a/src/compiler/Syntax/Diagnostics/ConsoleColors.cs b/src/compiler/NubLang/Diagnostics/ConsoleColors.cs similarity index 98% rename from src/compiler/Syntax/Diagnostics/ConsoleColors.cs rename to src/compiler/NubLang/Diagnostics/ConsoleColors.cs index d963905..cdfcaf1 100644 --- a/src/compiler/Syntax/Diagnostics/ConsoleColors.cs +++ b/src/compiler/NubLang/Diagnostics/ConsoleColors.cs @@ -1,7 +1,7 @@ using System.Text; -using Syntax.Tokenization; +using NubLang.Syntax.Tokenization; -namespace Syntax.Diagnostics; +namespace NubLang.Diagnostics; public static class ConsoleColors { diff --git a/src/compiler/Syntax/Diagnostics/Diagnostic.cs b/src/compiler/NubLang/Diagnostics/Diagnostic.cs similarity index 98% rename from src/compiler/Syntax/Diagnostics/Diagnostic.cs rename to src/compiler/NubLang/Diagnostics/Diagnostic.cs index db4ee55..2f7e6da 100644 --- a/src/compiler/Syntax/Diagnostics/Diagnostic.cs +++ b/src/compiler/NubLang/Diagnostics/Diagnostic.cs @@ -1,8 +1,8 @@ using System.Text; -using Syntax.Parsing; -using Syntax.Tokenization; +using NubLang.Syntax.Node; +using NubLang.Syntax.Tokenization; -namespace Syntax.Diagnostics; +namespace NubLang.Diagnostics; public class Diagnostic { @@ -25,7 +25,7 @@ public class Diagnostic return this; } - public DiagnosticBuilder At(Node.Node node) + public DiagnosticBuilder At(Node node) { _sourceSpan = SourceSpan.Merge(node.Tokens.Select(t => t.Span)); return this; diff --git a/src/compiler/Generation/QBE/QBEGenerator.cs b/src/compiler/NubLang/Generation/QBE/QBEGenerator.cs similarity index 99% rename from src/compiler/Generation/QBE/QBEGenerator.cs rename to src/compiler/NubLang/Generation/QBE/QBEGenerator.cs index ab59939..f9ead92 100644 --- a/src/compiler/Generation/QBE/QBEGenerator.cs +++ b/src/compiler/NubLang/Generation/QBE/QBEGenerator.cs @@ -2,11 +2,10 @@ using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Text; -using Syntax; -using Syntax.Node; -using Syntax.Tokenization; +using NubLang.Syntax.Node; +using NubLang.Syntax.Tokenization; -namespace Generation.QBE; +namespace NubLang.Generation.QBE; public static class QBEGenerator { diff --git a/src/compiler/Generation/QBE/QBEWriter.cs b/src/compiler/NubLang/Generation/QBE/QBEWriter.cs similarity index 96% rename from src/compiler/Generation/QBE/QBEWriter.cs rename to src/compiler/NubLang/Generation/QBE/QBEWriter.cs index 9d50c26..8408924 100644 --- a/src/compiler/Generation/QBE/QBEWriter.cs +++ b/src/compiler/NubLang/Generation/QBE/QBEWriter.cs @@ -1,8 +1,7 @@ using System.Text; -using Syntax; -using Syntax.Node; +using NubLang.Syntax.Node; -namespace Generation.QBE; +namespace NubLang.Generation.QBE; internal class QBEWriter { diff --git a/src/compiler/Syntax/NubBoundType.cs b/src/compiler/NubLang/NubBoundType.cs similarity index 99% rename from src/compiler/Syntax/NubBoundType.cs rename to src/compiler/NubLang/NubBoundType.cs index 52aa797..1345286 100644 --- a/src/compiler/Syntax/NubBoundType.cs +++ b/src/compiler/NubLang/NubBoundType.cs @@ -1,6 +1,6 @@ using System.Diagnostics.CodeAnalysis; -namespace Syntax; +namespace NubLang; public abstract class BoundNubType : IEquatable { diff --git a/src/compiler/Generation/Generation.csproj b/src/compiler/NubLang/NubLang.csproj similarity index 77% rename from src/compiler/Generation/Generation.csproj rename to src/compiler/NubLang/NubLang.csproj index fbe4e73..672493f 100644 --- a/src/compiler/Generation/Generation.csproj +++ b/src/compiler/NubLang/NubLang.csproj @@ -9,7 +9,11 @@ - + + + + + diff --git a/src/compiler/Syntax/NubType.cs b/src/compiler/NubLang/NubType.cs similarity index 54% rename from src/compiler/Syntax/NubType.cs rename to src/compiler/NubLang/NubType.cs index 52f10d1..fcdc3f6 100644 --- a/src/compiler/Syntax/NubType.cs +++ b/src/compiler/NubLang/NubType.cs @@ -1,29 +1,7 @@ -using System.Diagnostics.CodeAnalysis; - -namespace Syntax; +namespace NubLang; public abstract class NubType : IEquatable { - public bool Is8BitInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.I8 or PrimitiveTypeKind.U8 }; - public bool Is16BitInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.I16 or PrimitiveTypeKind.U16 }; - public bool Is32BitInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.I32 or PrimitiveTypeKind.U32 }; - public bool Is64BitInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.I64 or PrimitiveTypeKind.U64 }; - - public bool IsSignedInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.I8 or PrimitiveTypeKind.I16 or PrimitiveTypeKind.I32 or PrimitiveTypeKind.I64 }; - public bool IsUnsignedInteger => this is NubPrimitiveType { Kind: PrimitiveTypeKind.U8 or PrimitiveTypeKind.U16 or PrimitiveTypeKind.U32 or PrimitiveTypeKind.U64 }; - public bool IsInteger => IsSignedInteger || IsUnsignedInteger; - - public bool IsFloat32 => this is NubPrimitiveType { Kind: PrimitiveTypeKind.F32 }; - public bool IsFloat64 => this is NubPrimitiveType { Kind: PrimitiveTypeKind.F64 }; - public bool IsFloat => IsFloat32 || IsFloat64; - - public bool IsNumber => IsFloat || IsInteger; - - public bool IsVoid => this is NubVoidType; - public bool IsString => this is NubStringType; - public bool IsCString => this is NubCStringType; - public bool IsBool => this is NubPrimitiveType { Kind: PrimitiveTypeKind.Bool }; - public override bool Equals(object? obj) => obj is NubType other && Equals(other); public abstract bool Equals(NubType? other); @@ -34,25 +12,21 @@ public abstract class NubType : IEquatable public static bool operator !=(NubType? left, NubType? right) => !Equals(left, right); } -public abstract class NubComplexType : NubType; - -public abstract class NubSimpleType : NubType; - -public class NubCStringType : NubComplexType +public class NubCStringType : NubType { public override string ToString() => "cstring"; public override bool Equals(NubType? other) => other is NubCStringType; public override int GetHashCode() => HashCode.Combine(typeof(NubCStringType)); } -public class NubStringType : NubComplexType +public class NubStringType : NubType { public override string ToString() => "string"; public override bool Equals(NubType? other) => other is NubStringType; public override int GetHashCode() => HashCode.Combine(typeof(NubStringType)); } -public class NubFuncType(NubType returnType, List parameters) : NubSimpleType +public class NubFuncType(NubType returnType, List parameters) : NubType { public NubType ReturnType { get; } = returnType; public List Parameters { get; } = parameters; @@ -75,7 +49,7 @@ public class NubFuncType(NubType returnType, List parameters) : NubSimp } } -public class NubCustomType(string @namespace, string name) : NubComplexType +public class NubCustomType(string @namespace, string name) : NubType { public string Namespace { get; } = @namespace; public string Name { get; } = name; @@ -86,7 +60,7 @@ public class NubCustomType(string @namespace, string name) : NubComplexType public override int GetHashCode() => HashCode.Combine(typeof(NubCustomType), Namespace, Name); } -public class NubPointerType(NubType baseType) : NubSimpleType +public class NubPointerType(NubType baseType) : NubType { public NubType BaseType { get; } = baseType; @@ -96,7 +70,7 @@ public class NubPointerType(NubType baseType) : NubSimpleType public override int GetHashCode() => HashCode.Combine(typeof(NubPointerType), BaseType); } -public class NubArrayType(NubType elementType) : NubComplexType +public class NubArrayType(NubType elementType) : NubType { public NubType ElementType { get; } = elementType; @@ -106,53 +80,17 @@ public class NubArrayType(NubType elementType) : NubComplexType public override int GetHashCode() => HashCode.Combine(typeof(NubArrayType), ElementType); } -public class NubVoidType : NubSimpleType +public class NubVoidType : NubType { public override string ToString() => "void"; public override bool Equals(NubType? other) => other is NubVoidType; public override int GetHashCode() => HashCode.Combine(typeof(NubVoidType)); } -public class NubPrimitiveType(PrimitiveTypeKind kind) : NubSimpleType +public class NubPrimitiveType(PrimitiveTypeKind kind) : NubType { public PrimitiveTypeKind Kind { get; } = kind; - public static NubPrimitiveType I64 => new(PrimitiveTypeKind.I64); - public static NubPrimitiveType I32 => new(PrimitiveTypeKind.I32); - public static NubPrimitiveType I16 => new(PrimitiveTypeKind.I16); - public static NubPrimitiveType I8 => new(PrimitiveTypeKind.I8); - - public static NubPrimitiveType U64 => new(PrimitiveTypeKind.U64); - public static NubPrimitiveType U32 => new(PrimitiveTypeKind.U32); - public static NubPrimitiveType U16 => new(PrimitiveTypeKind.U16); - public static NubPrimitiveType U8 => new(PrimitiveTypeKind.U8); - - public static NubPrimitiveType F64 => new(PrimitiveTypeKind.F64); - public static NubPrimitiveType F32 => new(PrimitiveTypeKind.F32); - - public static NubPrimitiveType Bool => new(PrimitiveTypeKind.Bool); - - public static bool TryParse(string s, [NotNullWhen(true)] out PrimitiveTypeKind? kind) - { - kind = s switch - { - "i64" => PrimitiveTypeKind.I64, - "i32" => PrimitiveTypeKind.I32, - "i16" => PrimitiveTypeKind.I16, - "i8" => PrimitiveTypeKind.I8, - "u64" => PrimitiveTypeKind.U64, - "u32" => PrimitiveTypeKind.U32, - "u16" => PrimitiveTypeKind.U16, - "u8" => PrimitiveTypeKind.U8, - "f64" => PrimitiveTypeKind.F64, - "f32" => PrimitiveTypeKind.F32, - "bool" => PrimitiveTypeKind.Bool, - _ => null - }; - - return kind != null; - } - public override string ToString() { return Kind switch diff --git a/src/compiler/Syntax/Source.cs b/src/compiler/NubLang/Source.cs similarity index 99% rename from src/compiler/Syntax/Source.cs rename to src/compiler/NubLang/Source.cs index bfeb6af..3f941fe 100644 --- a/src/compiler/Syntax/Source.cs +++ b/src/compiler/NubLang/Source.cs @@ -1,6 +1,6 @@ using System.Diagnostics.CodeAnalysis; -namespace Syntax; +namespace NubLang; /// /// Represents a location in source code with line and column information. diff --git a/src/compiler/Syntax/Binding/Binder.cs b/src/compiler/NubLang/Syntax/Binding/Binder.cs similarity index 98% rename from src/compiler/Syntax/Binding/Binder.cs rename to src/compiler/NubLang/Syntax/Binding/Binder.cs index c1dde60..64e733e 100644 --- a/src/compiler/Syntax/Binding/Binder.cs +++ b/src/compiler/NubLang/Syntax/Binding/Binder.cs @@ -1,11 +1,11 @@ using System.Diagnostics; using Common; -using Syntax.Diagnostics; -using Syntax.Node; -using Syntax.Tokenization; -using UnaryExpressionNode = Syntax.Node.UnaryExpressionNode; +using NubLang.Diagnostics; +using NubLang.Syntax.Node; +using NubLang.Syntax.Tokenization; +using Node_UnaryExpressionNode = NubLang.Syntax.Node.UnaryExpressionNode; -namespace Syntax.Binding; +namespace NubLang.Syntax.Binding; // TODO: Currently anonymous function does not get a new scope public sealed class Binder @@ -273,7 +273,7 @@ public sealed class Binder LiteralNode expression => BindLiteral(expression, expectedType), MemberAccessNode expression => BindMemberAccess(expression), StructInitializerNode expression => BindStructInitializer(expression), - UnaryExpressionNode expression => BindUnaryExpression(expression), + Node_UnaryExpressionNode expression => BindUnaryExpression(expression), _ => throw new ArgumentOutOfRangeException(nameof(node)) }; } @@ -519,7 +519,7 @@ public sealed class Binder return new BoundStructInitializerNode(expression.Tokens, BindType(structType), new BoundNubStructType(@struct.Namespace, @struct.Name), initializers); } - private BoundUnaryExpressionNode BindUnaryExpression(UnaryExpressionNode expression) + private BoundUnaryExpressionNode BindUnaryExpression(Node_UnaryExpressionNode expression) { var boundOperand = BindExpression(expression.Operand); diff --git a/src/compiler/Syntax/Node/Definition.cs b/src/compiler/NubLang/Syntax/Node/Definition.cs similarity index 97% rename from src/compiler/Syntax/Node/Definition.cs rename to src/compiler/NubLang/Syntax/Node/Definition.cs index c9234de..6995627 100644 --- a/src/compiler/Syntax/Node/Definition.cs +++ b/src/compiler/NubLang/Syntax/Node/Definition.cs @@ -1,7 +1,7 @@ using Common; -using Syntax.Tokenization; +using NubLang.Syntax.Tokenization; -namespace Syntax.Node; +namespace NubLang.Syntax.Node; public record FuncParameterNode(IEnumerable Tokens, string Name, NubType Type) : DefinitionNode(Tokens); public record BoundFuncParameterNode(IEnumerable Tokens, string Name, BoundNubType Type) : DefinitionNode(Tokens); diff --git a/src/compiler/Syntax/Node/Expression.cs b/src/compiler/NubLang/Syntax/Node/Expression.cs similarity index 98% rename from src/compiler/Syntax/Node/Expression.cs rename to src/compiler/NubLang/Syntax/Node/Expression.cs index a1aac1c..34908ea 100644 --- a/src/compiler/Syntax/Node/Expression.cs +++ b/src/compiler/NubLang/Syntax/Node/Expression.cs @@ -1,7 +1,7 @@ using Common; -using Syntax.Tokenization; +using NubLang.Syntax.Tokenization; -namespace Syntax.Node; +namespace NubLang.Syntax.Node; public enum UnaryExpressionOperator { diff --git a/src/compiler/Syntax/Node/Node.cs b/src/compiler/NubLang/Syntax/Node/Node.cs similarity index 71% rename from src/compiler/Syntax/Node/Node.cs rename to src/compiler/NubLang/Syntax/Node/Node.cs index 1076dce..a9207d9 100644 --- a/src/compiler/Syntax/Node/Node.cs +++ b/src/compiler/NubLang/Syntax/Node/Node.cs @@ -1,6 +1,6 @@ -using Syntax.Tokenization; +using NubLang.Syntax.Tokenization; -namespace Syntax.Node; +namespace NubLang.Syntax.Node; public abstract record Node(IEnumerable Tokens); public abstract record BoundNode(IEnumerable Tokens); diff --git a/src/compiler/Syntax/Node/Statement.cs b/src/compiler/NubLang/Syntax/Node/Statement.cs similarity index 96% rename from src/compiler/Syntax/Node/Statement.cs rename to src/compiler/NubLang/Syntax/Node/Statement.cs index 04dd10d..f04d0d2 100644 --- a/src/compiler/Syntax/Node/Statement.cs +++ b/src/compiler/NubLang/Syntax/Node/Statement.cs @@ -1,7 +1,7 @@ using Common; -using Syntax.Tokenization; +using NubLang.Syntax.Tokenization; -namespace Syntax.Node; +namespace NubLang.Syntax.Node; public record StatementNode(IEnumerable Tokens) : Node(Tokens); diff --git a/src/compiler/Syntax/Node/SyntaxTree.cs b/src/compiler/NubLang/Syntax/Node/SyntaxTree.cs similarity index 79% rename from src/compiler/Syntax/Node/SyntaxTree.cs rename to src/compiler/NubLang/Syntax/Node/SyntaxTree.cs index b7acb68..54b4dcd 100644 --- a/src/compiler/Syntax/Node/SyntaxTree.cs +++ b/src/compiler/NubLang/Syntax/Node/SyntaxTree.cs @@ -1,6 +1,6 @@ -using Syntax.Diagnostics; +using NubLang.Diagnostics; -namespace Syntax.Node; +namespace NubLang.Syntax.Node; public record SyntaxTree(string Namespace, IEnumerable TopLevelNodes, IEnumerable Diagnostics); public record BoundSyntaxTree(string Namespace, IEnumerable TopLevelNodes, IEnumerable Diagnostics); \ No newline at end of file diff --git a/src/compiler/Syntax/Parsing/Parser.cs b/src/compiler/NubLang/Syntax/Parsing/Parser.cs similarity index 95% rename from src/compiler/Syntax/Parsing/Parser.cs rename to src/compiler/NubLang/Syntax/Parsing/Parser.cs index 3726d1e..5ce5064 100644 --- a/src/compiler/Syntax/Parsing/Parser.cs +++ b/src/compiler/NubLang/Syntax/Parsing/Parser.cs @@ -1,10 +1,10 @@ using System.Diagnostics.CodeAnalysis; using Common; -using Syntax.Diagnostics; -using Syntax.Node; -using Syntax.Tokenization; +using NubLang.Diagnostics; +using NubLang.Syntax.Node; +using NubLang.Syntax.Tokenization; -namespace Syntax.Parsing; +namespace NubLang.Syntax.Parsing; public sealed class Parser { @@ -668,33 +668,35 @@ public sealed class Parser { if (TryExpectIdentifier(out var name)) { - if (name.Value == "void") + return name.Value switch { - return new NubVoidType(); - } + "void" => new NubVoidType(), + "string" => new NubStringType(), + "cstring" => new NubCStringType(), + "i64" => new NubPrimitiveType(PrimitiveTypeKind.I64), + "i32" => new NubPrimitiveType(PrimitiveTypeKind.I32), + "i16" => new NubPrimitiveType(PrimitiveTypeKind.I16), + "i8" => new NubPrimitiveType(PrimitiveTypeKind.I8), + "u64" => new NubPrimitiveType(PrimitiveTypeKind.U64), + "u32" => new NubPrimitiveType(PrimitiveTypeKind.U32), + "u16" => new NubPrimitiveType(PrimitiveTypeKind.U16), + "u8" => new NubPrimitiveType(PrimitiveTypeKind.U8), + "f64" => new NubPrimitiveType(PrimitiveTypeKind.F64), + "f32" => new NubPrimitiveType(PrimitiveTypeKind.F32), + "bool" => new NubPrimitiveType(PrimitiveTypeKind.Bool), + _ => ParseCustomType() + }; - if (name.Value == "string") + NubCustomType ParseCustomType() { - return new NubStringType(); - } + var @namespace = _namespace; + if (TryExpectSymbol(Symbol.DoubleColon)) + { + @namespace = ExpectIdentifier().Value; + } - if (name.Value == "cstring") - { - return new NubCStringType(); + return new NubCustomType(@namespace, name.Value); } - - if (NubPrimitiveType.TryParse(name.Value, out var primitiveTypeKind)) - { - return new NubPrimitiveType(primitiveTypeKind.Value); - } - - var @namespace = _namespace; - if (TryExpectSymbol(Symbol.DoubleColon)) - { - @namespace = ExpectIdentifier().Value; - } - - return new NubCustomType(@namespace, name.Value); } if (TryExpectSymbol(Symbol.Caret)) diff --git a/src/compiler/Syntax/Tokenization/IdentifierToken.cs b/src/compiler/NubLang/Syntax/Tokenization/IdentifierToken.cs similarity index 73% rename from src/compiler/Syntax/Tokenization/IdentifierToken.cs rename to src/compiler/NubLang/Syntax/Tokenization/IdentifierToken.cs index 7d8c9e7..78dbbbc 100644 --- a/src/compiler/Syntax/Tokenization/IdentifierToken.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/IdentifierToken.cs @@ -1,4 +1,4 @@ -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public class IdentifierToken(SourceSpan span, string value) : Token(span) { diff --git a/src/compiler/Syntax/Tokenization/LiteralToken.cs b/src/compiler/NubLang/Syntax/Tokenization/LiteralToken.cs similarity index 85% rename from src/compiler/Syntax/Tokenization/LiteralToken.cs rename to src/compiler/NubLang/Syntax/Tokenization/LiteralToken.cs index f16671e..49452f4 100644 --- a/src/compiler/Syntax/Tokenization/LiteralToken.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/LiteralToken.cs @@ -1,4 +1,4 @@ -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public class LiteralToken(SourceSpan span, LiteralKind kind, string value) : Token(span) { diff --git a/src/compiler/Syntax/Tokenization/ModifierToken.cs b/src/compiler/NubLang/Syntax/Tokenization/ModifierToken.cs similarity index 81% rename from src/compiler/Syntax/Tokenization/ModifierToken.cs rename to src/compiler/NubLang/Syntax/Tokenization/ModifierToken.cs index 5312667..d90ad48 100644 --- a/src/compiler/Syntax/Tokenization/ModifierToken.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/ModifierToken.cs @@ -1,4 +1,4 @@ -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public class ModifierToken(SourceSpan span, Modifier modifier) : Token(span) { diff --git a/src/compiler/Syntax/Tokenization/SymbolToken.cs b/src/compiler/NubLang/Syntax/Tokenization/SymbolToken.cs similarity index 93% rename from src/compiler/Syntax/Tokenization/SymbolToken.cs rename to src/compiler/NubLang/Syntax/Tokenization/SymbolToken.cs index b898315..394acde 100644 --- a/src/compiler/Syntax/Tokenization/SymbolToken.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/SymbolToken.cs @@ -1,4 +1,4 @@ -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public class SymbolToken(SourceSpan span, Symbol symbol) : Token(span) { diff --git a/src/compiler/Syntax/Tokenization/Token.cs b/src/compiler/NubLang/Syntax/Tokenization/Token.cs similarity index 68% rename from src/compiler/Syntax/Tokenization/Token.cs rename to src/compiler/NubLang/Syntax/Tokenization/Token.cs index 89f3f47..65cd107 100644 --- a/src/compiler/Syntax/Tokenization/Token.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/Token.cs @@ -1,4 +1,4 @@ -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public abstract class Token(SourceSpan span) { diff --git a/src/compiler/Syntax/Tokenization/Tokenizer.cs b/src/compiler/NubLang/Syntax/Tokenization/Tokenizer.cs similarity index 99% rename from src/compiler/Syntax/Tokenization/Tokenizer.cs rename to src/compiler/NubLang/Syntax/Tokenization/Tokenizer.cs index de4b3a7..97d8ecc 100644 --- a/src/compiler/Syntax/Tokenization/Tokenizer.cs +++ b/src/compiler/NubLang/Syntax/Tokenization/Tokenizer.cs @@ -1,7 +1,7 @@ using Common; -using Syntax.Diagnostics; +using NubLang.Diagnostics; -namespace Syntax.Tokenization; +namespace NubLang.Syntax.Tokenization; public static class Tokenizer { diff --git a/src/compiler/Syntax/Syntax.csproj b/src/compiler/Syntax/Syntax.csproj deleted file mode 100644 index 31addee..0000000 --- a/src/compiler/Syntax/Syntax.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - net9.0 - enable - enable - true - - - - - - -