forked from JavaTX/JavaCompilerCore
101 lines
3.0 KiB
Java
101 lines
3.0 KiB
Java
|
// ino.module.Literal.8636.package
|
|||
|
package mycompiler.mystatement;
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.module.Literal.8636.import
|
|||
|
import mycompiler.mybytecode.ClassFile;
|
|||
|
import mycompiler.myexception.JVMCodeException;
|
|||
|
import mycompiler.mytypereconstruction.CSupportData;
|
|||
|
import mycompiler.mytypereconstruction.CTriple;
|
|||
|
import mycompiler.mytypereconstruction.set.CSubstitutionSet;
|
|||
|
import mycompiler.mytypereconstruction.set.CTripleSet;
|
|||
|
import mycompiler.mytypereconstruction.set.CTypeAssumptionSet;
|
|||
|
import mycompiler.mytypereconstruction.typeassumption.CTypeAssumption;
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.class.Literal.25490.declaration
|
|||
|
public abstract class Literal extends Expr
|
|||
|
// ino.end
|
|||
|
// ino.class.Literal.25490.body
|
|||
|
{
|
|||
|
// ino.attribute.primitiveFlag.29399.decldescription type=line
|
|||
|
// Gibt an, ob das Literal fuer einen Objekttyp oder
|
|||
|
// als primitive Konstante generiert werden soll.
|
|||
|
// Default: Konstanten werden als primitiver Typ generiert.
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.attribute.primitiveFlag.29399.declaration
|
|||
|
private boolean primitiveFlag=true;
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.method.setPrimitiveFlag.29402.definition
|
|||
|
public void setPrimitiveFlag(boolean b)
|
|||
|
// ino.end
|
|||
|
// ino.method.setPrimitiveFlag.29402.body
|
|||
|
{
|
|||
|
this.primitiveFlag=b;
|
|||
|
}
|
|||
|
// ino.end
|
|||
|
// ino.method.getPrimitiveFlag.29405.definition
|
|||
|
public boolean getPrimitiveFlag()
|
|||
|
// ino.end
|
|||
|
// ino.method.getPrimitiveFlag.29405.body
|
|||
|
{
|
|||
|
return(this.primitiveFlag);
|
|||
|
}
|
|||
|
// ino.end
|
|||
|
|
|||
|
|
|||
|
// ino.method.Literal.25494.definition
|
|||
|
public Literal(int offset,int variableLength)
|
|||
|
// ino.end
|
|||
|
// ino.method.Literal.25494.body
|
|||
|
{
|
|||
|
super(offset,variableLength);
|
|||
|
}
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.method.TRExp.25497.defdescription type=javadoc
|
|||
|
/**
|
|||
|
* Implementierung des Algorithmus 5.40 von Martin Pl<EFBFBD>micke
|
|||
|
* <br>Author: J<EFBFBD>rg B<EFBFBD>uerle
|
|||
|
* @param sigma
|
|||
|
* @param V
|
|||
|
* @param supportData
|
|||
|
* @return
|
|||
|
*/
|
|||
|
// ino.end
|
|||
|
// ino.method.TRExp.25497.definition
|
|||
|
public CTripleSet TRExp(CSubstitutionSet sigma, CTypeAssumptionSet V, CSupportData supportData)
|
|||
|
// ino.end
|
|||
|
// ino.method.TRExp.25497.body
|
|||
|
{
|
|||
|
CTripleSet tripleSet = new CTripleSet();
|
|||
|
tripleSet.addElement(new CTriple(sigma, this.getType(),V));
|
|||
|
return tripleSet;
|
|||
|
}
|
|||
|
// ino.end
|
|||
|
|
|||
|
// ino.method.ConstantCodegen.25500.defdescription type=javadoc
|
|||
|
/**
|
|||
|
* Erzeugt die benoetigten Konstanteneintraege, die den Wert
|
|||
|
* des Literals darstellen.
|
|||
|
*/
|
|||
|
// ino.end
|
|||
|
// ino.method.ConstantCodegen.25500.definition
|
|||
|
public short ConstantCodegen(ClassFile cf)
|
|||
|
throws JVMCodeException
|
|||
|
// ino.end
|
|||
|
// ino.method.ConstantCodegen.25500.body
|
|||
|
{
|
|||
|
throw new JVMCodeException("Bytecodegenerierung fuer das Literal " + this.getClass().toString()
|
|||
|
+ " wurde nicht implementiert!");
|
|||
|
}
|
|||
|
// ino.end
|
|||
|
|
|||
|
public void addOffsetsToExpression(CTypeAssumption localAssumption,String NameVariable,boolean isMemberVariable)
|
|||
|
{
|
|||
|
}
|
|||
|
}
|
|||
|
// ino.end
|