This commit is contained in:
2026-02-08 15:45:53 +01:00
parent e77c7028b9
commit 4c201c4085
4 changed files with 29 additions and 1 deletions

View File

@@ -65,6 +65,9 @@ public sealed class Generator(List<NodeDefinition> nodes)
case NodeStatementReturn statement:
EmitStatementReturn(statement);
break;
case NodeStatementVariableDeclaration statement:
EmitStatementVariableDeclaration(statement);
break;
default:
throw new ArgumentOutOfRangeException(nameof(node), node, null);
}
@@ -95,6 +98,12 @@ public sealed class Generator(List<NodeDefinition> nodes)
writer.WriteLine($"return {value};");
}
private void EmitStatementVariableDeclaration(NodeStatementVariableDeclaration statement)
{
var value = EmitExpression(statement.Value);
writer.WriteLine($"{CType(statement.Type)} {statement.Name.Ident} = {value};");
}
private string EmitExpression(NodeExpression node)
{
return node switch