Add constants and qualified type names to lexer, and use instruction schema to decode UIB instrctions

This commit is contained in:
Yoshi Askharoun
2024-02-11 20:38:19 -06:00
parent 03f8974ac1
commit 4056dc9f4f
9 changed files with 216 additions and 106 deletions
+6 -4
View File
@@ -14,16 +14,18 @@ public record SectionDirective : Directive
public record ConstantDirective : Directive
{
public ConstantDirective(string name, string typeName, string content) : base("constant")
public ConstantDirective(string name, QualifiedTypeName typeName, string content) : base("constant")
{
Name = name;
TypeName = typeName;
ValueString = content;
Content = content;
}
public string Name { get; }
public string TypeName { get; }
public string ValueString { get; }
public QualifiedTypeName TypeName { get; }
public string Content { get; }
public override string ToString() => $"{base.ToString()} {Name} = {TypeName}({Content})";
}
public record ExportDirective : Directive