Package gw.internal.gosu.parser
Class ErrorType
- java.lang.Object
-
- gw.lang.reflect.AbstractType
-
- gw.internal.gosu.parser.ErrorType
-
- All Implemented Interfaces:
IErrorType,INonLoadableType,IType,Serializable
public class ErrorType extends AbstractType implements IErrorType
A type representing the Error state in the type system. This is used when we are unable to determine the type for a particular expression due to errors and wish to assign a universally-compatible type to it that will not cascade the compilation error.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface gw.lang.reflect.IErrorType
NAME
-
Fields inherited from interface gw.lang.reflect.IType
EMPTY_ARRAY, EMPTY_TYPE_ARRAY, EMPTY_TYPE_LIST
-
-
Constructor Summary
Constructors Constructor Description ErrorType(ParseResultsException e)
-
Method Summary
-
Methods inherited from class gw.lang.reflect.AbstractType
getLiteralMetaType, getMetaType, getTheRef
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gw.lang.reflect.IType
compile, getFunctionalInterface, getLiteralMetaType, getMetaType, getSourceFiles, isCompilable, isDynamic
-
-
-
-
Constructor Detail
-
ErrorType
public ErrorType(ParseResultsException e)
-
-
Method Detail
-
getInstance
public static ErrorType getInstance()
-
getErrantTypeName
public String getErrantTypeName()
- Specified by:
getErrantTypeNamein interfaceIErrorType
-
getError
public ParseResultsException getError()
- Specified by:
getErrorin interfaceIErrorType
-
getDisplayName
public String getDisplayName()
- Specified by:
getDisplayNamein interfaceIType
-
getRelativeName
public String getRelativeName()
- Specified by:
getRelativeNamein interfaceIType
-
getNamespace
public String getNamespace()
- Specified by:
getNamespacein interfaceIType
-
getTypeLoader
public ITypeLoader getTypeLoader()
- Specified by:
getTypeLoaderin interfaceIType
-
isInterface
public boolean isInterface()
- Specified by:
isInterfacein interfaceIType
-
getInterfaces
public IType[] getInterfaces()
- Specified by:
getInterfacesin interfaceIType
-
getSupertype
public IType getSupertype()
- Specified by:
getSupertypein interfaceIType
-
getEnclosingType
public IType getEnclosingType()
- Specified by:
getEnclosingTypein interfaceIType
-
getGenericType
public IType getGenericType()
- Specified by:
getGenericTypein interfaceIType
-
isParameterizedType
public boolean isParameterizedType()
- Specified by:
isParameterizedTypein interfaceIType
-
isGenericType
public boolean isGenericType()
- Specified by:
isGenericTypein interfaceIType
-
getGenericTypeVariables
public GenericTypeVariable[] getGenericTypeVariables()
- Specified by:
getGenericTypeVariablesin interfaceIType
-
getParameterizedType
public IType getParameterizedType(IType... ofType)
- Specified by:
getParameterizedTypein interfaceIType
-
getTypeParameters
public IType[] getTypeParameters()
- Specified by:
getTypeParametersin interfaceIType
-
getAllTypesInHierarchy
public Set<? extends IType> getAllTypesInHierarchy()
- Specified by:
getAllTypesInHierarchyin interfaceIType
-
isPrimitive
public boolean isPrimitive()
- Specified by:
isPrimitivein interfaceIType
-
getArrayType
public IType getArrayType()
- Specified by:
getArrayTypein interfaceIType
-
makeArrayInstance
public Object makeArrayInstance(int iLength)
- Specified by:
makeArrayInstancein interfaceIType
-
getArrayComponent
public Object getArrayComponent(Object array, int iIndex) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
- Specified by:
getArrayComponentin interfaceIType- Throws:
IllegalArgumentExceptionArrayIndexOutOfBoundsException
-
setArrayComponent
public void setArrayComponent(Object array, int iIndex, Object value) throws IllegalArgumentException, ArrayIndexOutOfBoundsException
- Specified by:
setArrayComponentin interfaceIType- Throws:
IllegalArgumentExceptionArrayIndexOutOfBoundsException
-
getArrayLength
public int getArrayLength(Object array) throws IllegalArgumentException
- Specified by:
getArrayLengthin interfaceIType- Throws:
IllegalArgumentException
-
getComponentType
public IType getComponentType()
- Specified by:
getComponentTypein interfaceIType
-
isAssignableFrom
public boolean isAssignableFrom(IType type)
- Specified by:
isAssignableFromin interfaceIType
-
getTypeInfo
public ITypeInfo getTypeInfo()
- Specified by:
getTypeInfoin interfaceIType
-
unloadTypeInfo
public void unloadTypeInfo()
- Specified by:
unloadTypeInfoin interfaceIType
-
readResolve
public Object readResolve() throws ObjectStreamException
- Specified by:
readResolvein interfaceIType- Throws:
ObjectStreamException
-
getModifiers
public int getModifiers()
- Specified by:
getModifiersin interfaceIType
-
isAbstract
public boolean isAbstract()
- Specified by:
isAbstractin interfaceIType
-
shouldHandleAsErrorType
public static boolean shouldHandleAsErrorType(IType type)
-
getErrorTypeFunctionType
public IFunctionType getErrorTypeFunctionType(IExpression[] eArgs, String strMethod, List listAllMatchingMethods)
- Specified by:
getErrorTypeFunctionTypein interfaceIErrorType
-
getErrorTypeConstructorType
public IConstructorType getErrorTypeConstructorType(IExpression[] eArgs, List listAllMatchingMethods)
- Specified by:
getErrorTypeConstructorTypein interfaceIErrorType
-
isDiscarded
public boolean isDiscarded()
- Specified by:
isDiscardedin interfaceIType
-
setDiscarded
public void setDiscarded(boolean bDiscarded)
- Specified by:
setDiscardedin interfaceIType
-
isCompoundType
public boolean isCompoundType()
- Specified by:
isCompoundTypein interfaceIType
-
getCompoundTypeComponents
public Set<IType> getCompoundTypeComponents()
- Specified by:
getCompoundTypeComponentsin interfaceIType
-
-