From: <fwi...@us...> - 2008-11-24 04:39:11
|
Revision: 5628 http://jython.svn.sourceforge.net/jython/?rev=5628&view=rev Author: fwierzbicki Date: 2008-11-24 04:39:05 +0000 (Mon, 24 Nov 2008) Log Message: ----------- Just enough to get one of the (modified) 2.6 test_ast tests to pass. Modified Paths: -------------- branches/astwrite/Lib/test/test_ast.py branches/astwrite/ast/asdl_antlr.py branches/astwrite/src/org/python/antlr/ast/Assert.java branches/astwrite/src/org/python/antlr/ast/Assign.java branches/astwrite/src/org/python/antlr/ast/Attribute.java branches/astwrite/src/org/python/antlr/ast/AugAssign.java branches/astwrite/src/org/python/antlr/ast/BinOp.java branches/astwrite/src/org/python/antlr/ast/BoolOp.java branches/astwrite/src/org/python/antlr/ast/Break.java branches/astwrite/src/org/python/antlr/ast/Call.java branches/astwrite/src/org/python/antlr/ast/ClassDef.java branches/astwrite/src/org/python/antlr/ast/Compare.java branches/astwrite/src/org/python/antlr/ast/Continue.java branches/astwrite/src/org/python/antlr/ast/Delete.java branches/astwrite/src/org/python/antlr/ast/Dict.java branches/astwrite/src/org/python/antlr/ast/Ellipsis.java branches/astwrite/src/org/python/antlr/ast/Exec.java branches/astwrite/src/org/python/antlr/ast/Expr.java branches/astwrite/src/org/python/antlr/ast/Expression.java branches/astwrite/src/org/python/antlr/ast/ExtSlice.java branches/astwrite/src/org/python/antlr/ast/For.java branches/astwrite/src/org/python/antlr/ast/FunctionDef.java branches/astwrite/src/org/python/antlr/ast/GeneratorExp.java branches/astwrite/src/org/python/antlr/ast/Global.java branches/astwrite/src/org/python/antlr/ast/If.java branches/astwrite/src/org/python/antlr/ast/IfExp.java branches/astwrite/src/org/python/antlr/ast/Import.java branches/astwrite/src/org/python/antlr/ast/ImportFrom.java branches/astwrite/src/org/python/antlr/ast/Index.java branches/astwrite/src/org/python/antlr/ast/Interactive.java branches/astwrite/src/org/python/antlr/ast/Lambda.java branches/astwrite/src/org/python/antlr/ast/List.java branches/astwrite/src/org/python/antlr/ast/ListComp.java branches/astwrite/src/org/python/antlr/ast/Module.java branches/astwrite/src/org/python/antlr/ast/Name.java branches/astwrite/src/org/python/antlr/ast/Num.java branches/astwrite/src/org/python/antlr/ast/Pass.java branches/astwrite/src/org/python/antlr/ast/Print.java branches/astwrite/src/org/python/antlr/ast/Raise.java branches/astwrite/src/org/python/antlr/ast/Repr.java branches/astwrite/src/org/python/antlr/ast/Return.java branches/astwrite/src/org/python/antlr/ast/Slice.java branches/astwrite/src/org/python/antlr/ast/Str.java branches/astwrite/src/org/python/antlr/ast/Subscript.java branches/astwrite/src/org/python/antlr/ast/Suite.java branches/astwrite/src/org/python/antlr/ast/TryExcept.java branches/astwrite/src/org/python/antlr/ast/TryFinally.java branches/astwrite/src/org/python/antlr/ast/Tuple.java branches/astwrite/src/org/python/antlr/ast/UnaryOp.java branches/astwrite/src/org/python/antlr/ast/VisitorBase.java branches/astwrite/src/org/python/antlr/ast/While.java branches/astwrite/src/org/python/antlr/ast/With.java branches/astwrite/src/org/python/antlr/ast/Yield.java branches/astwrite/src/org/python/antlr/ast/aliasType.java branches/astwrite/src/org/python/antlr/ast/argumentsType.java branches/astwrite/src/org/python/antlr/ast/boolopType.java branches/astwrite/src/org/python/antlr/ast/cmpopType.java branches/astwrite/src/org/python/antlr/ast/comprehensionType.java branches/astwrite/src/org/python/antlr/ast/excepthandlerType.java branches/astwrite/src/org/python/antlr/ast/exprType.java branches/astwrite/src/org/python/antlr/ast/expr_contextType.java branches/astwrite/src/org/python/antlr/ast/keywordType.java branches/astwrite/src/org/python/antlr/ast/modType.java branches/astwrite/src/org/python/antlr/ast/operatorType.java branches/astwrite/src/org/python/antlr/ast/sliceType.java branches/astwrite/src/org/python/antlr/ast/stmtType.java branches/astwrite/src/org/python/antlr/ast/unaryopType.java Added Paths: ----------- branches/astwrite/src/org/python/antlr/AstAdapter.java Modified: branches/astwrite/Lib/test/test_ast.py =================================================================== --- branches/astwrite/Lib/test/test_ast.py 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/Lib/test/test_ast.py 2008-11-24 04:39:05 UTC (rev 5628) @@ -174,20 +174,20 @@ self._assert_order(ast_tree, (0, 0)) def test_nodeclasses(self): - x = ast.BinOp(1, 2, 3, lineno=0) - self.assertEquals(x.left, 1) - self.assertEquals(x.op, 2) - self.assertEquals(x.right, 3) + x = ast.BinOp(1, ast.Add, 3, lineno=0) + self.assertEquals(x.left.n, 1) + self.assertEquals(x.op, ast.Add) + self.assertEquals(x.right.n, 3) self.assertEquals(x.lineno, 0) # node raises exception when not given enough arguments self.assertRaises(TypeError, ast.BinOp, 1, 2) # can set attributes through kwargs too - x = ast.BinOp(left=1, op=2, right=3, lineno=0) - self.assertEquals(x.left, 1) - self.assertEquals(x.op, 2) - self.assertEquals(x.right, 3) + x = ast.BinOp(left=1, op=ast.Add, right=3, lineno=0) + self.assertEquals(x.left.n, 1) + self.assertEquals(x.op, ast.Add) + self.assertEquals(x.right.n, 3) self.assertEquals(x.lineno, 0) # this used to fail because Sub._fields was None Modified: branches/astwrite/ast/asdl_antlr.py =================================================================== --- branches/astwrite/ast/asdl_antlr.py 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/ast/asdl_antlr.py 2008-11-24 04:39:05 UTC (rev 5628) @@ -56,6 +56,7 @@ print >> self.file, "// Autogenerated AST node" print >> self.file, 'package org.python.antlr.ast;' if refersToPythonTree: + print >> self.file, 'import org.python.antlr.AstAdapter;' print >> self.file, 'import org.python.antlr.PythonTree;' print >> self.file, 'import org.python.antlr.ListWrapper;' print >> self.file, 'import org.antlr.runtime.CommonToken;' @@ -150,6 +151,8 @@ self.attributes(sum, depth, True); + self.emit("public %sType __call__() { return this; }" % name, depth + 1) + self.emit("}", depth) self.close() @@ -291,9 +294,6 @@ def javaConstructorHelper(self, fields, depth): for f in fields: - #XXX: old version: - #self.emit("this.%s = %s;" % (f.name, f.name), depth+1) - #XXX: code cut and pasted from visitField if f.seq: self.emit("this.%s = new %s(%s);" % (f.name, self.javaType(f, True), f.name), depth+1) @@ -319,44 +319,9 @@ #XXX: this method used to emit a pickle(DataOutputStream ostream) for cPickle support. # If we want to re-add it, see Jython 2.2's pickle method in its ast nodes. def javaMethods(self, type, clsname, ctorname, fields, depth): - # The java ctors - fpargs = ", ".join([self.fieldDef(f) for f in fields]) - self.emit("public %s(%s) {" % (ctorname, fpargs), depth) - self.javaConstructorHelper(fields, depth) - self.emit("}", depth) - self.emit("", 0) + self.javaConstructors(type, clsname, ctorname, fields, depth) - token = asdl.Field('Token', 'token') - token.typedef = False - fpargs = ", ".join([self.fieldDef(f) for f in [token] + fields]) - self.emit("public %s(%s) {" % (ctorname, fpargs), depth) - self.emit("super(token);", depth+1) - self.javaConstructorHelper(fields, depth) - self.emit("}", depth) - self.emit("", 0) - - ttype = asdl.Field('int', 'ttype') - ttype.typedef = False - fpargs = ", ".join([self.fieldDef(f) for f in [ttype, token] + fields]) - self.emit("public %s(%s) {" % (ctorname, fpargs), depth) - self.emit("super(ttype, token);", depth+1) - self.javaConstructorHelper(fields, depth) - self.emit("}", depth) - self.emit("", 0) - - tree = asdl.Field('PythonTree', 'tree') - tree.typedef = False - fpargs = ", ".join([self.fieldDef(f) for f in [tree] + fields]) - self.emit("public %s(%s) {" % (ctorname, fpargs), depth) - self.emit("super(tree);", depth+1) - self.javaConstructorHelper(fields, depth) - self.emit("}", depth) - self.emit("", 0) - - if fpargs: - fpargs += ", " - # The toString() method self.emit("public String toString() {", depth) self.emit('return "%s";' % clsname, depth+1) @@ -407,6 +372,46 @@ self.emit('}', depth) self.emit("", 0) + def javaConstructors(self, type, clsname, ctorname, fields, depth): + if len(fields) > 0: + self.emit("public %s() {}" % (ctorname), depth) + + fpargs = ", ".join(["Object %s" % f.name for f in fields]) + self.emit("public %s(%s) {" % (ctorname, fpargs), depth) + for f in fields: + self.emit("set%s(%s);" % (str(f.name).capitalize(), + f.name), depth+1) + self.emit("}", depth) + self.emit("", 0) + + token = asdl.Field('Token', 'token') + token.typedef = False + fpargs = ", ".join([self.fieldDef(f) for f in [token] + fields]) + self.emit("public %s(%s) {" % (ctorname, fpargs), depth) + self.emit("super(token);", depth+1) + self.javaConstructorHelper(fields, depth) + self.emit("}", depth) + self.emit("", 0) + + ttype = asdl.Field('int', 'ttype') + ttype.typedef = False + fpargs = ", ".join([self.fieldDef(f) for f in [ttype, token] + fields]) + self.emit("public %s(%s) {" % (ctorname, fpargs), depth) + self.emit("super(ttype, token);", depth+1) + self.javaConstructorHelper(fields, depth) + self.emit("}", depth) + self.emit("", 0) + + tree = asdl.Field('PythonTree', 'tree') + tree.typedef = False + fpargs = ", ".join([self.fieldDef(f) for f in [tree] + fields]) + self.emit("public %s(%s) {" % (ctorname, fpargs), depth) + self.emit("super(tree);", depth+1) + self.javaConstructorHelper(fields, depth) + self.emit("}", depth) + self.emit("", 0) + + def visitField(self, field, depth): self.emit("private %s;" % self.fieldDef(field, True), depth) self.emit("public %s getInternal%s() {" % (self.javaType(field, True), @@ -422,7 +427,7 @@ self.emit("this.%s = new %s(" % (field.name, self.javaType(field, True)), depth+1) self.emit("(%s)%s);" % (self.javaType(field), field.name), depth+2) else: - self.emit("this.%s = (%s)%s;" % (field.name, self.javaType(field), field.name), depth+1) + self.emit("this.%s = AstAdapter.to_%s(%s);" % (field.name, str(field.type), field.name), depth+1) self.emit("}", depth) self.emit("", 0) Added: branches/astwrite/src/org/python/antlr/AstAdapter.java =================================================================== --- branches/astwrite/src/org/python/antlr/AstAdapter.java (rev 0) +++ branches/astwrite/src/org/python/antlr/AstAdapter.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -0,0 +1,109 @@ +package org.python.antlr; + +import org.python.antlr.ast.*; +import org.python.core.*; + +/** + * AstAdapter turns Python and Java objects into ast nodes. + */ +public class AstAdapter { + + public static exprType to_expr(Object o) { + if (o == null || o instanceof exprType) { + return (exprType)o; + } else if (o instanceof Integer) { + return new Num(new PyInteger((Integer)o)); + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to expr node"); + } + + public static int to_int(Object o) { + if (o == null || o instanceof Integer) { + return (Integer)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to int node"); + } + + public static String to_identifier(Object o) { + if (o == null || o instanceof String) { + return (String)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to identifier node"); + } + + public static expr_contextType to_expr_context(Object o) { + if (o == null || o instanceof expr_contextType) { + return (expr_contextType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to expr_context node"); + } + + public static sliceType to_slice(Object o) { + if (o == null || o instanceof sliceType) { + return (sliceType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to slice node"); + } + + public static String to_string(Object o) { + if (o == null || o instanceof String) { + return (String)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to string node"); + } + + public static operatorType to_operator(Object o) { + if (o == null || o instanceof operatorType) { + return (operatorType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to operator node"); + } + + public static boolopType to_boolop(Object o) { + if (o == null || o instanceof boolopType) { + return (boolopType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to boolop node"); + } + + public static argumentsType to_arguments(Object o) { + if (o == null || o instanceof argumentsType) { + return (argumentsType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to arguments node"); + } + + public static Object to_object(Object o) { + if (o == null || o instanceof Object) { + return (Object)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to object node"); + } + + public static Boolean to_bool(Object o) { + if (o == null || o instanceof Boolean) { + return (Boolean)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to Boolean node"); + } + + public static unaryopType to_unaryop(Object o) { + if (o == null || o instanceof unaryopType) { + return (unaryopType)o; + } + //FIXME: investigate the right exception + throw Py.TypeError("Can't convert " + o.getClass().getName() + " to unaryop node"); + } + +} Modified: branches/astwrite/src/org/python/antlr/ast/Assert.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Assert.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Assert.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return test; } public void setTest(Object test) { - this.test = (exprType)test; + this.test = AstAdapter.to_expr(test); } private exprType msg; @@ -27,18 +28,17 @@ return msg; } public void setMsg(Object msg) { - this.msg = (exprType)msg; + this.msg = AstAdapter.to_expr(msg); } private final static String[] fields = new String[] {"test", "msg"}; public String[] get_fields() { return fields; } - public Assert(exprType test, exprType msg) { - this.test = test; - addChild(test); - this.msg = msg; - addChild(msg); + public Assert() {} + public Assert(Object test, Object msg) { + setTest(test); + setMsg(msg); } public Assert(Token token, exprType test, exprType msg) { Modified: branches/astwrite/src/org/python/antlr/ast/Assign.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Assign.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Assign.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -28,22 +29,17 @@ return value; } public void setValue(Object value) { - this.value = (exprType)value; + this.value = AstAdapter.to_expr(value); } private final static String[] fields = new String[] {"targets", "value"}; public String[] get_fields() { return fields; } - public Assign(java.util.List<exprType> targets, exprType value) { - this.targets = new ListWrapper<exprType>(targets); - if (targets != null) { - for(PythonTree t : targets) { - addChild(t); - } - } - this.value = value; - addChild(value); + public Assign() {} + public Assign(Object targets, Object value) { + setTargets(targets); + setValue(value); } public Assign(Token token, java.util.List<exprType> targets, exprType Modified: branches/astwrite/src/org/python/antlr/ast/Attribute.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Attribute.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Attribute.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return value; } public void setValue(Object value) { - this.value = (exprType)value; + this.value = AstAdapter.to_expr(value); } private String attr; @@ -27,7 +28,7 @@ return attr; } public void setAttr(Object attr) { - this.attr = (String)attr; + this.attr = AstAdapter.to_identifier(attr); } private expr_contextType ctx; @@ -38,7 +39,7 @@ return ctx; } public void setCtx(Object ctx) { - this.ctx = (expr_contextType)ctx; + this.ctx = AstAdapter.to_expr_context(ctx); } @@ -46,11 +47,11 @@ "ctx"}; public String[] get_fields() { return fields; } - public Attribute(exprType value, String attr, expr_contextType ctx) { - this.value = value; - addChild(value); - this.attr = attr; - this.ctx = ctx; + public Attribute() {} + public Attribute(Object value, Object attr, Object ctx) { + setValue(value); + setAttr(attr); + setCtx(ctx); } public Attribute(Token token, exprType value, String attr, expr_contextType Modified: branches/astwrite/src/org/python/antlr/ast/AugAssign.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/AugAssign.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/AugAssign.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return target; } public void setTarget(Object target) { - this.target = (exprType)target; + this.target = AstAdapter.to_expr(target); } private operatorType op; @@ -27,7 +28,7 @@ return op; } public void setOp(Object op) { - this.op = (operatorType)op; + this.op = AstAdapter.to_operator(op); } private exprType value; @@ -38,7 +39,7 @@ return value; } public void setValue(Object value) { - this.value = (exprType)value; + this.value = AstAdapter.to_expr(value); } @@ -46,12 +47,11 @@ "value"}; public String[] get_fields() { return fields; } - public AugAssign(exprType target, operatorType op, exprType value) { - this.target = target; - addChild(target); - this.op = op; - this.value = value; - addChild(value); + public AugAssign() {} + public AugAssign(Object target, Object op, Object value) { + setTarget(target); + setOp(op); + setValue(value); } public AugAssign(Token token, exprType target, operatorType op, exprType Modified: branches/astwrite/src/org/python/antlr/ast/BinOp.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/BinOp.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/BinOp.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,8 +1,8 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; -import org.python.core.PyInteger; import org.antlr.runtime.CommonToken; import org.antlr.runtime.Token; import java.io.DataOutputStream; @@ -17,14 +17,9 @@ return left; } public void setLeft(Object left) { - if (left instanceof exprType) { - this.left = (exprType)left; - } else if (left instanceof Integer) { - this.left = new Num(new PyInteger((Integer)left)); - } + this.left = AstAdapter.to_expr(left); } - private operatorType op; public operatorType getInternalOp() { return op; @@ -33,7 +28,7 @@ return op; } public void setOp(Object op) { - this.op = (operatorType)op; + this.op = AstAdapter.to_operator(op); } private exprType right; @@ -44,28 +39,15 @@ return right; } public void setRight(Object right) { - if (right instanceof exprType) { - this.right = (exprType)right; - } else if (right instanceof Integer) { - this.right = new Num(new PyInteger((Integer)right)); - } + this.right = AstAdapter.to_expr(right); } + private final static String[] fields = new String[] {"left", "op", "right"}; public String[] get_fields() { return fields; } - public BinOp(exprType left, operatorType op, exprType right) { - this.left = left; - addChild(left); - this.op = op; - this.right = right; - addChild(right); - } - - public BinOp() { - } - - public BinOp(Object left, operatorType op, Object right) { + public BinOp() {} + public BinOp(Object left, Object op, Object right) { setLeft(left); setOp(op); setRight(right); Modified: branches/astwrite/src/org/python/antlr/ast/BoolOp.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/BoolOp.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/BoolOp.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return op; } public void setOp(Object op) { - this.op = (boolopType)op; + this.op = AstAdapter.to_boolop(op); } private ListWrapper<exprType> values; @@ -35,14 +36,10 @@ private final static String[] fields = new String[] {"op", "values"}; public String[] get_fields() { return fields; } - public BoolOp(boolopType op, java.util.List<exprType> values) { - this.op = op; - this.values = new ListWrapper<exprType>(values); - if (values != null) { - for(PythonTree t : values) { - addChild(t); - } - } + public BoolOp() {} + public BoolOp(Object op, Object values) { + setOp(op); + setValues(values); } public BoolOp(Token token, boolopType op, java.util.List<exprType> values) { Modified: branches/astwrite/src/org/python/antlr/ast/Break.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Break.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Break.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -9,9 +10,6 @@ public class Break extends stmtType { - public Break() { - } - public Break(Token token) { super(token); } Modified: branches/astwrite/src/org/python/antlr/ast/Call.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Call.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Call.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return func; } public void setFunc(Object func) { - this.func = (exprType)func; + this.func = AstAdapter.to_expr(func); } private ListWrapper<exprType> args; @@ -51,7 +52,7 @@ return starargs; } public void setStarargs(Object starargs) { - this.starargs = (exprType)starargs; + this.starargs = AstAdapter.to_expr(starargs); } private exprType kwargs; @@ -62,7 +63,7 @@ return kwargs; } public void setKwargs(Object kwargs) { - this.kwargs = (exprType)kwargs; + this.kwargs = AstAdapter.to_expr(kwargs); } @@ -71,26 +72,14 @@ "starargs", "kwargs"}; public String[] get_fields() { return fields; } - public Call(exprType func, java.util.List<exprType> args, - java.util.List<keywordType> keywords, exprType starargs, exprType kwargs) { - this.func = func; - addChild(func); - this.args = new ListWrapper<exprType>(args); - if (args != null) { - for(PythonTree t : args) { - addChild(t); - } - } - this.keywords = new ListWrapper<keywordType>(keywords); - if (keywords != null) { - for(PythonTree t : keywords) { - addChild(t); - } - } - this.starargs = starargs; - addChild(starargs); - this.kwargs = kwargs; - addChild(kwargs); + public Call() {} + public Call(Object func, Object args, Object keywords, Object starargs, + Object kwargs) { + setFunc(func); + setArgs(args); + setKeywords(keywords); + setStarargs(starargs); + setKwargs(kwargs); } public Call(Token token, exprType func, java.util.List<exprType> args, Modified: branches/astwrite/src/org/python/antlr/ast/ClassDef.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/ClassDef.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/ClassDef.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return name; } public void setName(Object name) { - this.name = (String)name; + this.name = AstAdapter.to_identifier(name); } private ListWrapper<exprType> bases; @@ -60,27 +61,12 @@ "body", "decorators"}; public String[] get_fields() { return fields; } - public ClassDef(String name, java.util.List<exprType> bases, - java.util.List<stmtType> body, java.util.List<exprType> decorators) { - this.name = name; - this.bases = new ListWrapper<exprType>(bases); - if (bases != null) { - for(PythonTree t : bases) { - addChild(t); - } - } - this.body = new ListWrapper<stmtType>(body); - if (body != null) { - for(PythonTree t : body) { - addChild(t); - } - } - this.decorators = new ListWrapper<exprType>(decorators); - if (decorators != null) { - for(PythonTree t : decorators) { - addChild(t); - } - } + public ClassDef() {} + public ClassDef(Object name, Object bases, Object body, Object decorators) { + setName(name); + setBases(bases); + setBody(body); + setDecorators(decorators); } public ClassDef(Token token, String name, java.util.List<exprType> bases, Modified: branches/astwrite/src/org/python/antlr/ast/Compare.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Compare.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Compare.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return left; } public void setLeft(Object left) { - this.left = (exprType)left; + this.left = AstAdapter.to_expr(left); } private ListWrapper<cmpopType> ops; @@ -48,17 +49,11 @@ "comparators"}; public String[] get_fields() { return fields; } - public Compare(exprType left, java.util.List<cmpopType> ops, - java.util.List<exprType> comparators) { - this.left = left; - addChild(left); - this.ops = new ListWrapper<cmpopType>(ops); - this.comparators = new ListWrapper<exprType>(comparators); - if (comparators != null) { - for(PythonTree t : comparators) { - addChild(t); - } - } + public Compare() {} + public Compare(Object left, Object ops, Object comparators) { + setLeft(left); + setOps(ops); + setComparators(comparators); } public Compare(Token token, exprType left, java.util.List<cmpopType> ops, Modified: branches/astwrite/src/org/python/antlr/ast/Continue.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Continue.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Continue.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -9,9 +10,6 @@ public class Continue extends stmtType { - public Continue() { - } - public Continue(Token token) { super(token); } Modified: branches/astwrite/src/org/python/antlr/ast/Delete.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Delete.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Delete.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -24,13 +25,9 @@ private final static String[] fields = new String[] {"targets"}; public String[] get_fields() { return fields; } - public Delete(java.util.List<exprType> targets) { - this.targets = new ListWrapper<exprType>(targets); - if (targets != null) { - for(PythonTree t : targets) { - addChild(t); - } - } + public Delete() {} + public Delete(Object targets) { + setTargets(targets); } public Delete(Token token, java.util.List<exprType> targets) { Modified: branches/astwrite/src/org/python/antlr/ast/Dict.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Dict.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Dict.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -36,20 +37,10 @@ private final static String[] fields = new String[] {"keys", "values"}; public String[] get_fields() { return fields; } - public Dict(java.util.List<exprType> keys, java.util.List<exprType> values) - { - this.keys = new ListWrapper<exprType>(keys); - if (keys != null) { - for(PythonTree t : keys) { - addChild(t); - } - } - this.values = new ListWrapper<exprType>(values); - if (values != null) { - for(PythonTree t : values) { - addChild(t); - } - } + public Dict() {} + public Dict(Object keys, Object values) { + setKeys(keys); + setValues(values); } public Dict(Token token, java.util.List<exprType> keys, Modified: branches/astwrite/src/org/python/antlr/ast/Ellipsis.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Ellipsis.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Ellipsis.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -9,9 +10,6 @@ public class Ellipsis extends sliceType { - public Ellipsis() { - } - public Ellipsis(Token token) { super(token); } Modified: branches/astwrite/src/org/python/antlr/ast/Exec.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Exec.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Exec.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return body; } public void setBody(Object body) { - this.body = (exprType)body; + this.body = AstAdapter.to_expr(body); } private exprType globals; @@ -27,7 +28,7 @@ return globals; } public void setGlobals(Object globals) { - this.globals = (exprType)globals; + this.globals = AstAdapter.to_expr(globals); } private exprType locals; @@ -38,7 +39,7 @@ return locals; } public void setLocals(Object locals) { - this.locals = (exprType)locals; + this.locals = AstAdapter.to_expr(locals); } @@ -46,13 +47,11 @@ "locals"}; public String[] get_fields() { return fields; } - public Exec(exprType body, exprType globals, exprType locals) { - this.body = body; - addChild(body); - this.globals = globals; - addChild(globals); - this.locals = locals; - addChild(locals); + public Exec() {} + public Exec(Object body, Object globals, Object locals) { + setBody(body); + setGlobals(globals); + setLocals(locals); } public Exec(Token token, exprType body, exprType globals, exprType locals) { Modified: branches/astwrite/src/org/python/antlr/ast/Expr.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Expr.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Expr.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,16 +17,16 @@ return value; } public void setValue(Object value) { - this.value = (exprType)value; + this.value = AstAdapter.to_expr(value); } private final static String[] fields = new String[] {"value"}; public String[] get_fields() { return fields; } - public Expr(exprType value) { - this.value = value; - addChild(value); + public Expr() {} + public Expr(Object value) { + setValue(value); } public Expr(Token token, exprType value) { Modified: branches/astwrite/src/org/python/antlr/ast/Expression.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Expression.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Expression.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,16 +17,16 @@ return body; } public void setBody(Object body) { - this.body = (exprType)body; + this.body = AstAdapter.to_expr(body); } private final static String[] fields = new String[] {"body"}; public String[] get_fields() { return fields; } - public Expression(exprType body) { - this.body = body; - addChild(body); + public Expression() {} + public Expression(Object body) { + setBody(body); } public Expression(Token token, exprType body) { Modified: branches/astwrite/src/org/python/antlr/ast/ExtSlice.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/ExtSlice.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/ExtSlice.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -24,13 +25,9 @@ private final static String[] fields = new String[] {"dims"}; public String[] get_fields() { return fields; } - public ExtSlice(java.util.List<sliceType> dims) { - this.dims = new ListWrapper<sliceType>(dims); - if (dims != null) { - for(PythonTree t : dims) { - addChild(t); - } - } + public ExtSlice() {} + public ExtSlice(Object dims) { + setDims(dims); } public ExtSlice(Token token, java.util.List<sliceType> dims) { Modified: branches/astwrite/src/org/python/antlr/ast/For.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/For.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/For.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return target; } public void setTarget(Object target) { - this.target = (exprType)target; + this.target = AstAdapter.to_expr(target); } private exprType iter; @@ -27,7 +28,7 @@ return iter; } public void setIter(Object iter) { - this.iter = (exprType)iter; + this.iter = AstAdapter.to_expr(iter); } private ListWrapper<stmtType> body; @@ -59,24 +60,12 @@ "body", "orelse"}; public String[] get_fields() { return fields; } - public For(exprType target, exprType iter, java.util.List<stmtType> body, - java.util.List<stmtType> orelse) { - this.target = target; - addChild(target); - this.iter = iter; - addChild(iter); - this.body = new ListWrapper<stmtType>(body); - if (body != null) { - for(PythonTree t : body) { - addChild(t); - } - } - this.orelse = new ListWrapper<stmtType>(orelse); - if (orelse != null) { - for(PythonTree t : orelse) { - addChild(t); - } - } + public For() {} + public For(Object target, Object iter, Object body, Object orelse) { + setTarget(target); + setIter(iter); + setBody(body); + setOrelse(orelse); } public For(Token token, exprType target, exprType iter, Modified: branches/astwrite/src/org/python/antlr/ast/FunctionDef.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/FunctionDef.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/FunctionDef.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return name; } public void setName(Object name) { - this.name = (String)name; + this.name = AstAdapter.to_identifier(name); } private argumentsType args; @@ -27,7 +28,7 @@ return args; } public void setArgs(Object args) { - this.args = (argumentsType)args; + this.args = AstAdapter.to_arguments(args); } private ListWrapper<stmtType> body; @@ -59,22 +60,13 @@ "body", "decorators"}; public String[] get_fields() { return fields; } - public FunctionDef(String name, argumentsType args, - java.util.List<stmtType> body, java.util.List<exprType> decorators) { - this.name = name; - this.args = args; - this.body = new ListWrapper<stmtType>(body); - if (body != null) { - for(PythonTree t : body) { - addChild(t); - } - } - this.decorators = new ListWrapper<exprType>(decorators); - if (decorators != null) { - for(PythonTree t : decorators) { - addChild(t); - } - } + public FunctionDef() {} + public FunctionDef(Object name, Object args, Object body, Object + decorators) { + setName(name); + setArgs(args); + setBody(body); + setDecorators(decorators); } public FunctionDef(Token token, String name, argumentsType args, Modified: branches/astwrite/src/org/python/antlr/ast/GeneratorExp.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/GeneratorExp.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/GeneratorExp.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return elt; } public void setElt(Object elt) { - this.elt = (exprType)elt; + this.elt = AstAdapter.to_expr(elt); } private ListWrapper<comprehensionType> generators; @@ -35,16 +36,10 @@ private final static String[] fields = new String[] {"elt", "generators"}; public String[] get_fields() { return fields; } - public GeneratorExp(exprType elt, java.util.List<comprehensionType> - generators) { - this.elt = elt; - addChild(elt); - this.generators = new ListWrapper<comprehensionType>(generators); - if (generators != null) { - for(PythonTree t : generators) { - addChild(t); - } - } + public GeneratorExp() {} + public GeneratorExp(Object elt, Object generators) { + setElt(elt); + setGenerators(generators); } public GeneratorExp(Token token, exprType elt, Modified: branches/astwrite/src/org/python/antlr/ast/Global.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Global.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Global.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -24,8 +25,9 @@ private final static String[] fields = new String[] {"names"}; public String[] get_fields() { return fields; } - public Global(java.util.List<String> names) { - this.names = new ListWrapper<String>(names); + public Global() {} + public Global(Object names) { + setNames(names); } public Global(Token token, java.util.List<String> names) { Modified: branches/astwrite/src/org/python/antlr/ast/If.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/If.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/If.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return test; } public void setTest(Object test) { - this.test = (exprType)test; + this.test = AstAdapter.to_expr(test); } private ListWrapper<stmtType> body; @@ -48,22 +49,11 @@ "orelse"}; public String[] get_fields() { return fields; } - public If(exprType test, java.util.List<stmtType> body, - java.util.List<stmtType> orelse) { - this.test = test; - addChild(test); - this.body = new ListWrapper<stmtType>(body); - if (body != null) { - for(PythonTree t : body) { - addChild(t); - } - } - this.orelse = new ListWrapper<stmtType>(orelse); - if (orelse != null) { - for(PythonTree t : orelse) { - addChild(t); - } - } + public If() {} + public If(Object test, Object body, Object orelse) { + setTest(test); + setBody(body); + setOrelse(orelse); } public If(Token token, exprType test, java.util.List<stmtType> body, Modified: branches/astwrite/src/org/python/antlr/ast/IfExp.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/IfExp.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/IfExp.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return test; } public void setTest(Object test) { - this.test = (exprType)test; + this.test = AstAdapter.to_expr(test); } private exprType body; @@ -27,7 +28,7 @@ return body; } public void setBody(Object body) { - this.body = (exprType)body; + this.body = AstAdapter.to_expr(body); } private exprType orelse; @@ -38,7 +39,7 @@ return orelse; } public void setOrelse(Object orelse) { - this.orelse = (exprType)orelse; + this.orelse = AstAdapter.to_expr(orelse); } @@ -46,13 +47,11 @@ "orelse"}; public String[] get_fields() { return fields; } - public IfExp(exprType test, exprType body, exprType orelse) { - this.test = test; - addChild(test); - this.body = body; - addChild(body); - this.orelse = orelse; - addChild(orelse); + public IfExp() {} + public IfExp(Object test, Object body, Object orelse) { + setTest(test); + setBody(body); + setOrelse(orelse); } public IfExp(Token token, exprType test, exprType body, exprType orelse) { Modified: branches/astwrite/src/org/python/antlr/ast/Import.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Import.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Import.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -24,13 +25,9 @@ private final static String[] fields = new String[] {"names"}; public String[] get_fields() { return fields; } - public Import(java.util.List<aliasType> names) { - this.names = new ListWrapper<aliasType>(names); - if (names != null) { - for(PythonTree t : names) { - addChild(t); - } - } + public Import() {} + public Import(Object names) { + setNames(names); } public Import(Token token, java.util.List<aliasType> names) { Modified: branches/astwrite/src/org/python/antlr/ast/ImportFrom.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/ImportFrom.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/ImportFrom.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return module; } public void setModule(Object module) { - this.module = (String)module; + this.module = AstAdapter.to_identifier(module); } private ListWrapper<aliasType> names; @@ -39,7 +40,7 @@ return level; } public void setLevel(Object level) { - this.level = (Integer)level; + this.level = AstAdapter.to_int(level); } @@ -47,16 +48,11 @@ "level"}; public String[] get_fields() { return fields; } - public ImportFrom(String module, java.util.List<aliasType> names, Integer - level) { - this.module = module; - this.names = new ListWrapper<aliasType>(names); - if (names != null) { - for(PythonTree t : names) { - addChild(t); - } - } - this.level = level; + public ImportFrom() {} + public ImportFrom(Object module, Object names, Object level) { + setModule(module); + setNames(names); + setLevel(level); } public ImportFrom(Token token, String module, java.util.List<aliasType> Modified: branches/astwrite/src/org/python/antlr/ast/Index.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Index.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Index.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,16 +17,16 @@ return value; } public void setValue(Object value) { - this.value = (exprType)value; + this.value = AstAdapter.to_expr(value); } private final static String[] fields = new String[] {"value"}; public String[] get_fields() { return fields; } - public Index(exprType value) { - this.value = value; - addChild(value); + public Index() {} + public Index(Object value) { + setValue(value); } public Index(Token token, exprType value) { Modified: branches/astwrite/src/org/python/antlr/ast/Interactive.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Interactive.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Interactive.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -24,13 +25,9 @@ private final static String[] fields = new String[] {"body"}; public String[] get_fields() { return fields; } - public Interactive(java.util.List<stmtType> body) { - this.body = new ListWrapper<stmtType>(body); - if (body != null) { - for(PythonTree t : body) { - addChild(t); - } - } + public Interactive() {} + public Interactive(Object body) { + setBody(body); } public Interactive(Token token, java.util.List<stmtType> body) { Modified: branches/astwrite/src/org/python/antlr/ast/Lambda.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Lambda.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/Lambda.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return args; } public void setArgs(Object args) { - this.args = (argumentsType)args; + this.args = AstAdapter.to_arguments(args); } private exprType body; @@ -27,17 +28,17 @@ return body; } public void setBody(Object body) { - this.body = (exprType)body; + this.body = AstAdapter.to_expr(body); } private final static String[] fields = new String[] {"args", "body"}; public String[] get_fields() { return fields; } - public Lambda(argumentsType args, exprType body) { - this.args = args; - this.body = body; - addChild(body); + public Lambda() {} + public Lambda(Object args, Object body) { + setArgs(args); + setBody(body); } public Lambda(Token token, argumentsType args, exprType body) { Modified: branches/astwrite/src/org/python/antlr/ast/List.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/List.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/List.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -28,21 +29,17 @@ return ctx; } public void setCtx(Object ctx) { - this.ctx = (expr_contextType)ctx; + this.ctx = AstAdapter.to_expr_context(ctx); } private final static String[] fields = new String[] {"elts", "ctx"}; public String[] get_fields() { return fields; } - public List(java.util.List<exprType> elts, expr_contextType ctx) { - this.elts = new ListWrapper<exprType>(elts); - if (elts != null) { - for(PythonTree t : elts) { - addChild(t); - } - } - this.ctx = ctx; + public List() {} + public List(Object elts, Object ctx) { + setElts(elts); + setCtx(ctx); } public List(Token token, java.util.List<exprType> elts, expr_contextType Modified: branches/astwrite/src/org/python/antlr/ast/ListComp.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/ListComp.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrite/src/org/python/antlr/ast/ListComp.java 2008-11-24 04:39:05 UTC (rev 5628) @@ -1,5 +1,6 @@ // Autogenerated AST node package org.python.antlr.ast; +import org.python.antlr.AstAdapter; import org.python.antlr.PythonTree; import org.python.antlr.ListWrapper; import org.antlr.runtime.CommonToken; @@ -16,7 +17,7 @@ return elt; } public void setElt(Object elt) { - this.elt = (exprType)elt; + this.elt = AstAdapter.to_expr(elt); } private ListWrapper<comprehensionType> generators; @@ -35,16 +36,10 @@ private final static String[] fields = new String[] {"elt", "generators"}; public String[] get_fields() { return fields; } - public ListComp(exprType elt, java.util.List<comprehensionType> generators) - { - this.elt = elt; - addChild(elt); - this.generators = new ListWrapper<comprehensionType>(generators); - if (generators != null) { - for(PythonTree t : generators) { - addChild(t); - } - } + public ListComp() {} + public ListComp(Object elt, Object generators) { + setElt(elt); + setGenerators(generators); } public ListComp(Token token, exprType elt, Modified: branches/astwrite/src/org/python/antlr/ast/Module.java =================================================================== --- branches/astwrite/src/org/python/antlr/ast/Module.java 2008-11-24 02:48:33 UTC (rev 5627) +++ branches/astwrit... [truncated message content] |