Optimised structs
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
public abstract partial class Lexer<TToken> where TToken : Enum
|
||||
{
|
||||
public struct Token : ISourceLocation
|
||||
public readonly struct Token : ISourceLocation
|
||||
{
|
||||
public string File { get; }
|
||||
public TToken Type { get; }
|
||||
|
||||
@@ -16,7 +16,7 @@ public class VisitorContainer
|
||||
public class VisitorContainer<T>
|
||||
{
|
||||
protected Dictionary<Type, Visitor.Visit<T>> Visitors { get; } = new();
|
||||
public Visitor.Visit<T> Default { get; set; } = default!;
|
||||
public Visitor.Visit<T> Default { get; } = default!;
|
||||
|
||||
|
||||
public VisitorContainer<T> Register<TVisitee>(Visitor.Visit<T> visitor)
|
||||
@@ -31,7 +31,7 @@ public class VisitorContainer<T>
|
||||
public class VisitorContainer<TIn, TOut>
|
||||
{
|
||||
protected Dictionary<Type, Visitor.Visit<TIn, TOut>> Visitors { get; } = new();
|
||||
public Visitor.Visit<TIn, TOut> Default { get; set; } = default!;
|
||||
public Visitor.Visit<TIn, TOut> Default { get; } = default!;
|
||||
|
||||
public void Register<TVisitee>(Visitor.Visit<TIn, TOut> visitor)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user