public override bool Visit(AstArgumentDef node) { ErrorIfIsNull(node.Name); ErrorIfIsNull(node.TypeDef); return true; }
public override bool Visit(AstArgumentDef node) { return true; }
public override bool Visit(AstArgumentDef node) { if (node.TypeDef is AstIdArrayExpression) { DispatchError(node.TypeDef.TextPosition, "Passing arrays to functions is not implemented in current version."); return false; } var s = table.LookupParent(node.Name.Id); if (s != null) { DispatchError(node.Name.TextPosition, "this variable name already used in parent scope. Ambigious variables is forbidden."); } return true; }
// #ARGUMENTS_DEFINITION #ARGUMENT_DEFINITION COMMA #ARGUMENTS_DEFINITION /*private void ConstructArgumentsDefinition() { } */ // #ARGUMENT_DEFINITION #TYPE_DEFINITION ID private void ConstructArgumentDefinition() { var argName = nodes.Pop() as AstIdExpression; var typeDef = nodes.Pop() as AstIdExpression; var argDef = new AstArgumentDef(typeDef, argName); PushNode(argDef); }
public abstract bool Visit(AstArgumentDef node);