package mycompiler.myclass; import java.util.Vector; import mycompiler.mybytecode.ClassFile; import mycompiler.myexception.JVMCodeException; import mycompiler.mytype.Type; import mycompiler.mytypereconstruction.replacementlistener.CReplaceTypeEvent; import typinferenz.JavaCodeResult; import typinferenz.ResultSet; import typinferenz.Typable; import typinferenz.TypeInsertable; import typinferenz.assumptions.TypeAssumptions; public abstract class Field implements TypeInsertable, Typable{ // ino.attribute.declid.23370.declaration protected Vector declid = new Vector(); // Vector, da 'int a, b, c, ...' auch eingeparst werden muss private Type typ; @Override public void setTypeVariable(Type typ) { this.typ = typ; } @Override public Type getTypeVariable() { return typ; } // ino.method.codegen.23376.declaration public abstract void codegen(ClassFile classfile, Vector paralist) throws JVMCodeException; // ino.end // ino.method.set_DeclId.23379.definition public void set_DeclId(DeclId did) // ino.end // ino.method.set_DeclId.23379.body { this.declid.addElement(did); } // ino.end // ino.method.get_Name.23382.definition public Vector get_Name() // ino.end // ino.method.get_Name.23382.body { return declid; } // ino.end // ino.method.getDeclIdVector.23385.definition public Vector getDeclIdVector() // ino.end // ino.method.getDeclIdVector.23385.body { // otth: ganzer Vektor zur�ckgeben, um ihn zu kopieren (vgl. MyCompiler - Konstruktor in Methode umwandeln) return declid; } // ino.end // ino.method.setDeclIdVector.23388.definition public void setDeclIdVector( Vector vDeclId ) // ino.end // ino.method.setDeclIdVector.23388.body { // otth: kompletter Vektor setzen, um ihn zu kopieren (vgl. MyCompiler - Konstruktor in Methode umwandeln) declid = vDeclId; } // ino.end public abstract JavaCodeResult printJavaCode(ResultSet resultSet); /** * Diese Methode generiert die Assumptions für dieses Feld der Klasse classmember * @param classmember * @return */ public abstract TypeAssumptions createTypeAssumptions(Class classmember); }