ua.gradsoft.javachecker.models.expressions
Class JavaClassObjectConstantExpressionModel

java.lang.Object
  extended by ua.gradsoft.javachecker.models.expressions.JavaClassObjectConstantExpressionModel
All Implemented Interfaces:
JavaObjectConstantExpressionModel, JavaExpressionModel

public class JavaClassObjectConstantExpressionModel
extends java.lang.Object
implements JavaObjectConstantExpressionModel

'Expression' which is really a constant, situated in class

Author:
rssh

Constructor Summary
JavaClassObjectConstantExpressionModel(java.lang.Object o, JavaTypeModel enclosedType)
          Creates a new instance of JavaClassObjectConstantExpressionModel
 
Method Summary
 JavaExpressionModel eval(JavaTraceContext ctx)
           
 java.lang.Object getConstant()
           
 JavaTypeModel getEnclosedType()
          enclosing type of statement.
 JavaExpressionKind getKind()
           
 Term getModelTerm()
           
 JavaStatementModel getStatementModel()
          statement model, or null if expression is outside statement.
 java.util.List<JavaExpressionModel> getSubExpressions()
           
 Term getTerm()
           
 JavaTypeModel getType()
           
 boolean isConstantExpression()
           
 boolean isType()
          return true, if expression represents type.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaClassObjectConstantExpressionModel

public JavaClassObjectConstantExpressionModel(java.lang.Object o,
                                              JavaTypeModel enclosedType)
Creates a new instance of JavaClassObjectConstantExpressionModel

Method Detail

getType

public JavaTypeModel getType()
                      throws TermWareException
Specified by:
getType in interface JavaExpressionModel
Throws:
TermWareException

isType

public boolean isType()
Description copied from interface: JavaExpressionModel
return true, if expression represents type.

Specified by:
isType in interface JavaExpressionModel

getKind

public JavaExpressionKind getKind()
Specified by:
getKind in interface JavaExpressionModel

getSubExpressions

public java.util.List<JavaExpressionModel> getSubExpressions()
Specified by:
getSubExpressions in interface JavaExpressionModel

getEnclosedType

public JavaTypeModel getEnclosedType()
Description copied from interface: JavaExpressionModel
enclosing type of statement.

Specified by:
getEnclosedType in interface JavaExpressionModel

getStatementModel

public JavaStatementModel getStatementModel()
Description copied from interface: JavaExpressionModel
statement model, or null if expression is outside statement.

Specified by:
getStatementModel in interface JavaExpressionModel

getConstant

public java.lang.Object getConstant()
Specified by:
getConstant in interface JavaObjectConstantExpressionModel
Returns:
value of expression as Java object constant.

getModelTerm

public Term getModelTerm()
                  throws TermWareException
Specified by:
getModelTerm in interface JavaExpressionModel
Returns:
model term
Throws:
TermWareException

getTerm

public Term getTerm()
             throws TermWareException
Specified by:
getTerm in interface JavaExpressionModel
Returns:
term, suitable for parsing as part of sourcr
Throws:
TermWareException

isConstantExpression

public boolean isConstantExpression()
Specified by:
isConstantExpression in interface JavaExpressionModel

eval

public JavaExpressionModel eval(JavaTraceContext ctx)