From: Brian Alliet Date: Thu, 15 Dec 2005 00:00:10 +0000 (+0000) Subject: temporarily remove some of the .Body references X-Git-Url: http://git.megacz.com/?p=org.ibex.classgen.git;a=commitdiff_plain;h=ce71fa77f336c3aa7b254dbf18811372e446bd37 temporarily remove some of the .Body references darcs-hash:20051215000010-931ed-88432f152e87213cd27bd9592b2470cacde497f3.gz --- diff --git a/src/org/ibex/classgen/ClassFile.java b/src/org/ibex/classgen/ClassFile.java index 3739114..46f5e3e 100644 --- a/src/org/ibex/classgen/ClassFile.java +++ b/src/org/ibex/classgen/ClassFile.java @@ -93,7 +93,10 @@ public class ClassFile extends Type.Class.Body { @see CGConst */ public final MethodGen addMethod(String name, Type ret, Type[] args, int flags) { - MethodGen mg = new MethodGen(getType().method(name, ret, args), flags); + return addMethod(getType().method(name, ret, args),flags); + } + public final MethodGen addMethod(Type.Class.Method method,int flags) { + MethodGen mg = new MethodGen(method, flags); methods.addElement(mg); return mg; } @@ -108,8 +111,11 @@ public class ClassFile extends Type.Class.Body { @see FieldGen @see CGConst */ - public final Type.Class.Field.Body addField(Type.Class.Field field, int flags) { - FieldGen fg = new FieldGen(field, flags); + public final FieldGen addField(String name, Type type, int flags) { + return addField(getType().field(name,type),flags); + } + public final FieldGen addField(Type.Class.Field field, int flags) { + FieldGen fg = new FieldGen(field , flags); fields.addElement(fg); return fg; } diff --git a/src/org/ibex/classgen/Type.java b/src/org/ibex/classgen/Type.java index 441c6fc..85ff169 100644 --- a/src/org/ibex/classgen/Type.java +++ b/src/org/ibex/classgen/Type.java @@ -143,7 +143,6 @@ public abstract class Type implements CGConst { public Type.Class.Body getBody(Context cx) { return cx.resolve(this.getName()); } public abstract class Body extends HasAttributes { public abstract Type.Class.Method.Body[] methods(); - public abstract Type.Class.Field.Body addField(Type.Class.Field field, int flags); public abstract Type.Class.Field.Body[] fields(); public Body(int flags, ClassFile.AttrGen attrs) { super(flags, attrs); diff --git a/src/org/ibex/classgen/opt/Arena.java b/src/org/ibex/classgen/opt/Arena.java index 34ca1b5..9a29ed7 100644 --- a/src/org/ibex/classgen/opt/Arena.java +++ b/src/org/ibex/classgen/opt/Arena.java @@ -59,14 +59,14 @@ public class Arena implements CGConst { Type.Class.Method arenaInit = arenaInitBody.getMethod(); Type.Class.Field maxField = arena.field(getGladiatorName(c) + "$$max", Type.INT); - arenaBody.addField(maxField, PRIVATE); + /*arenaBody.addField(maxField, PRIVATE);*/ /* assign(arenaInitBody, newIFR(arenaInitBody, maxField.makeRef()), IntConstant.v(initialSize), arenaInitBody.getFirstNonIdentityStmt()); */ Type.Class.Field sizeField = arena.field(getGladiatorName(c) + "$$size", Type.INT); - arenaBody.addField(sizeField, PRIVATE); + /*arenaBody.addField(sizeField, PRIVATE);*/ /* assign(arenaInitBody, newIFR(arenaInitBody, sfr.makeRef()), IntConstant.v(0), arenaInitBody.getFirstNonIdentityStmt());