Class TypeLiteral
- java.lang.Object
-
- gw.internal.gosu.parser.ParsedElement
-
- gw.internal.gosu.parser.Expression
-
- gw.internal.gosu.parser.expressions.Literal
-
- gw.internal.gosu.parser.expressions.TypeLiteral
-
- All Implemented Interfaces:
ILiteralExpression
,ITypeLiteralExpression
,IExpression
,IHasType
,IParsedElement
,Cloneable
- Direct Known Subclasses:
BlockLiteral
,CompoundTypeLiteral
,InferredTypeLiteral
,InterfaceTypeLiteral
public class TypeLiteral extends Literal implements ITypeLiteralExpression
Represents a Type literal expression as defined in the Gosu grammar.- See Also:
IGosuParser
-
-
Field Summary
-
Fields inherited from class gw.internal.gosu.parser.Expression
_type
-
Fields inherited from class gw.internal.gosu.parser.ParsedElement
_tokens, UNDEF_FILE, UNDEF_FUNCTION, UNDEF_MODULE
-
Fields inherited from interface gw.lang.parser.IExpression
EMPTY_ARRAY
-
-
Constructor Summary
Constructors Constructor Description TypeLiteral()
TypeLiteral(IType type)
TypeLiteral(IType type, boolean ignoreTypeDeprecation)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone()
IType
evaluate()
Evaluates this Expression and returns the result.Expression
getPackageExpression()
This expression is of NamespaceType.MetaType
getType()
Returns this Expression's IType.protected MetaType
getTypeImpl()
boolean
isCompileTimeConstant()
void
setPackageExpression(Expression packageExpr)
void
setParameterTypes(IType[] types)
void
setType(IType type)
Sets this Expression's IType.String
toString()
Subclasses should return a String representing the parsed expression.-
Methods inherited from class gw.internal.gosu.parser.Expression
evaluate, getContextType, getReturnType, isNullSafe, isUnchecked
-
Methods inherited from class gw.internal.gosu.parser.ParsedElement
addExceptionsFrom, addParseException, addParseException, addParseException, addParseExceptions, addParseIssues, addParseWarning, addParseWarning, addParseWarnings, addToken, adjustColumn, adjustLineNum, assignTokens, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, compactParseTree, findAncestorParsedElementByType, findDeclaringStatement, findLineNumberOfDeclaration, findRootParsedElement, getAnnotations, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getEnclosingFeatureInfo, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getQualifyingEnclosingTypeInfo, getTokens, hasImmediateParseIssue, hasImmediateParseWarning, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, initEmptyParseTree, initLocation, isSuppressed, isSuppressed, isSynthetic, makeDoubleValue, makeFloatValue, makeInteger, makeLong, removeParseException, removeParseWarning, removeParseWarningRecursively, setGosuProgram, setLineNum, setLocation, setParent, setSynthetic, shouldClearParseInfo, visit
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gw.lang.parser.IExpression
evaluate, getContextType, isNullSafe, isUnchecked
-
Methods inherited from interface gw.lang.parser.IParsedElement
addExceptionsFrom, addParseException, addParseException, addParseWarning, addParseWarning, clearParseExceptions, clearParseTreeInformation, clearParseWarnings, findAncestorParsedElementByType, findDeclaringStatement, findRootParsedElement, getColumn, getContainedParsedElementsByType, getContainedParsedElementsByTypes, getContainedParsedElementsByTypesWithIgnoreSet, getFunctionName, getGosuClass, getGosuProgram, getImmediateParseIssue, getImmediateParseIssues, getLineNum, getLocation, getModule, getParent, getParseExceptions, getParseIssues, getParseWarnings, getReturnType, getTokens, hasImmediateParseIssue, hasImmediateParseWarnings, hasParseException, hasParseExceptions, hasParseIssue, hasParseIssues, hasParseWarning, hasParseWarnings, isSuppressed, isSynthetic, setLocation, setParent, visit
-
-
-
-
Method Detail
-
getPackageExpression
public Expression getPackageExpression()
This expression is of NamespaceType. It will be either an Identifier or a MemberAccess.- Specified by:
getPackageExpression
in interfaceITypeLiteralExpression
-
setPackageExpression
public void setPackageExpression(Expression packageExpr)
-
setType
public void setType(IType type)
Description copied from class:Expression
Sets this Expression's IType.- Specified by:
setType
in interfaceITypeLiteralExpression
- Overrides:
setType
in classExpression
-
setParameterTypes
public void setParameterTypes(IType[] types)
- Parameters:
types
- If this is a parameterized type, these are the parameter types.
-
isCompileTimeConstant
public boolean isCompileTimeConstant()
- Specified by:
isCompileTimeConstant
in interfaceIParsedElement
- Overrides:
isCompileTimeConstant
in classParsedElement
-
evaluate
public IType evaluate()
Description copied from interface:IExpression
Evaluates this Expression and returns the result.- Specified by:
evaluate
in interfaceIExpression
- Overrides:
evaluate
in classExpression
-
toString
public String toString()
Description copied from class:Expression
Subclasses should return a String representing the parsed expression.- Specified by:
toString
in classExpression
-
getType
public MetaType getType()
Description copied from class:Expression
Returns this Expression's IType.- Specified by:
getType
in interfaceIHasType
- Specified by:
getType
in interfaceITypeLiteralExpression
- Overrides:
getType
in classExpression
-
getTypeImpl
protected MetaType getTypeImpl()
- Overrides:
getTypeImpl
in classExpression
-
-