mycompiler.mystatement
Class CharLiteral

java.lang.Object
  extended by mycompiler.mystatement.Statement
      extended by mycompiler.mystatement.ExprStmt
          extended by mycompiler.mystatement.Expr
              extended by mycompiler.mystatement.Literal
                  extended by mycompiler.mystatement.CharLiteral
All Implemented Interfaces:
ITypeReplacementListener

public class CharLiteral
extends Literal


Field Summary
 
Fields inherited from class mycompiler.mystatement.Expr
usedid
 
Fields inherited from class mycompiler.mystatement.ExprStmt
type
 
Constructor Summary
CharLiteral()
           
 
Method Summary
 void codegen(ClassFile classfile, CodeAttribute code, de.dhbwstuttgart.typeinference.Menge paralist)
           
 java.lang.String get_Name()
           
 void sc_check(de.dhbwstuttgart.typeinference.Menge classname, java.util.Hashtable ch, java.util.Hashtable bh, boolean ext, java.util.Hashtable parach, java.util.Hashtable parabh)
           
 void set_Char(char c)
           
 CTripleSet TRExp(CSubstitutionSet sigma, CTypeAssumptionSet V, CSupportData supportData)
          Workaround: �berschreibt Methode TRExp aus der Super-Klasse Literal, weil die Implementierung von Unify (noch) nicht mit Basetypes umgehen kann.
 CTripleSet TRStatement(CSubstitutionSet sigma, CTypeAssumptionSet V, CSupportData supportData)
           
 
Methods inherited from class mycompiler.mystatement.Expr
get_Name_Menge, get_Type_Menge, get_UsedId, set_Type, set_UsedId, TRMultiply, TRTuple
 
Methods inherited from class mycompiler.mystatement.ExprStmt
getType, getTypeLineNumber, getTypeName, replaceType, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CharLiteral

public CharLiteral()
Method Detail

sc_check

public void sc_check(de.dhbwstuttgart.typeinference.Menge classname,
                     java.util.Hashtable ch,
                     java.util.Hashtable bh,
                     boolean ext,
                     java.util.Hashtable parach,
                     java.util.Hashtable parabh)
Specified by:
sc_check in class Expr

set_Char

public void set_Char(char c)

get_Name

public java.lang.String get_Name()
Specified by:
get_Name in class Expr

codegen

public void codegen(ClassFile classfile,
                    CodeAttribute code,
                    de.dhbwstuttgart.typeinference.Menge paralist)
             throws JVMCodeException
Specified by:
codegen in class Statement
Throws:
JVMCodeException

TRStatement

public CTripleSet TRStatement(CSubstitutionSet sigma,
                              CTypeAssumptionSet V,
                              CSupportData supportData)
Specified by:
TRStatement in class Statement

TRExp

public CTripleSet TRExp(CSubstitutionSet sigma,
                        CTypeAssumptionSet V,
                        CSupportData supportData)
Workaround: �berschreibt Methode TRExp aus der Super-Klasse Literal, weil die Implementierung von Unify (noch) nicht mit Basetypes umgehen kann.
Anstatt den Basetype CharacterType zur�ckzugeben, wird ein RefType zur�ckgegeben.
Diese Methode kann sp�ter entfernt werden, sodass automatisch die Methode der Super-Klasse verwendet wird.
Author: J�rg B�uerle

Overrides:
TRExp in class Literal
Parameters:
sigma -
V -
supportData -
Returns: