public override string AST(int depth = 0) { return($"{Spaces(depth)}[{Name}\n" + $"{Id.AST(depth + 1)}" + $"{DeclarationBlock.AST(depth + 1)}" + $"{MainBlock.AST(depth + 1)}{Spaces(depth)}]\n"); }
public override string AST(int depth = 0) { return($"{Spaces(depth)}[{Name} {(Reference ? "Ref" : "")}\n" + $"{Id.AST(depth + 1)}" + $"{Type.AST(depth + 1)}" + $"{Spaces(depth)}]\n"); }
public override string AST(int depth = 0) { return($"{Spaces(depth)}[{Name}\n" + $"{Id.AST(depth + 1)}" + (Type != null ? $"{Type.AST(depth + 1)}" : "") + $"{Spaces(depth)}]\n"); }
public override string AST(int depth = 0) { var sb = new StringBuilder($"{Spaces(depth)}[{Name}\n" + (Type != null ? $"{Type.AST(depth + 1)}" : "") + $"{Id.AST(depth + 1)}"); foreach (var s in Parameters) { sb.Append(s.AST(depth + 1)); } sb.Append($"{Statement.AST(depth + 1)}{Spaces(depth)}]\n"); return(sb.ToString()); }
public override string AST(int depth = 0) { var sb = new StringBuilder($"{Spaces(depth)}[{Name}\n" + $"{Id.AST(depth + 1)}" + (Type != null ? $"{Type.AST(depth + 1)}" : "")); foreach (var a in Arguments) { sb.Append(a.AST(depth + 1)); } sb.Append($"{Spaces(depth)}]\n"); return(sb.ToString()); }