JavaPatternMatching/src/de/dhbwstuttgart/syntaxtree/statement/Literal.java

101 lines
3.0 KiB
Java
Raw Normal View History

2013-10-18 11:33:46 +00:00
// ino.module.Literal.8636.package
2014-09-02 08:33:54 +00:00
package de.dhbwstuttgart.syntaxtree.statement;
2013-10-18 11:33:46 +00:00
// 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