Package gw.internal.gosu.parser
Class GosuClass
java.lang.Object
gw.lang.reflect.AbstractType
gw.lang.reflect.InnerClassCapableType
gw.internal.gosu.parser.GosuClass
- All Implemented Interfaces:
ICompilableTypeInternal,IGosuClassInternal,IParameterizableType,IFileRepositoryBasedType,IHasInnerClass,ICompilableType,IGosuClass,ICanBeAnnotation,IEnhanceableType,IEnumData,IEnumType,IHasJavaClass,IType,Serializable,Comparable
- Direct Known Subclasses:
GosuClassFragment,GosuEnhancement,GosuProgram,SyntheticClass
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface gw.lang.reflect.gs.IGosuClass
IGosuClass.ProxyUtilNested classes/interfaces inherited from interface gw.internal.gosu.parser.IGosuClassInternal
IGosuClassInternal.Util -
Field Summary
FieldsFields inherited from interface gw.lang.reflect.gs.IGosuClass
ANONYMOUS_PREFIX, PROXY_PREFIX, SUPER_PROXY_CLASS_PREFIXFields inherited from interface gw.lang.reflect.IType
EMPTY_ARRAY, EMPTY_TYPE_ARRAY, EMPTY_TYPE_LIST -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedGosuClass(IGosuClass genericClass, IType[] typeParams) protectedGosuClass(IGosuClass genericClass, IType[] typeParams, boolean bCopyState) GosuClass(String strNamespace, String strRelativeName, GosuClassTypeLoader classTypeLoader, ISourceFileHandle sourceFile, ITypeUsesMap typeUsesMap) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBlock(IBlockClass block) voidvoidaddDelegateImpls(ISymbolTable symTable, GosuClassParser parser) voidaddInnerClass(IGosuClassInternal innerGsClass) voidaddInterface(IType type) voidassignTypeUsesMap(GosuParser parser) voidassignTypeVarsFromTypeParams(IType[] typeParams) Note a gosu class can be BOTH parameterzied AND generic.intbyte[]compile()voidvoidvoidcompileDefinitionsIfNeeded(boolean bForce) voidvoidcopyGenericState(boolean bCopyHierarchy) voidWhen changing the places from which this method is called run pc's gw.smoketest.pc.job.common.effectivetime.VisibleEffectiveTimeTest cause it will break!booleanensureDefaultConstructor(ISymbolTable symbolTable, GosuParser parser) voidReturns a Set of all IIntrinsicTypes that this class is assignable from, including this class.intgetArrayComponent(Object array, int iIndex) Returns the value of the indexed component in the specified array object.intgetArrayLength(Object array) Returns the length of the specified array object.Make an array type from this type.Class<?> getBlock(int i) intgetCapturedSymbol(String strName) gw.internal.gosu.parser.CompilationStateIf this is an array type, a type representing the component type of the array.getConstructorFunction(String name) intgetDepth()The display name of this intrinsic type.Returns the type immediately enclosing this type.getEnumValue(String strName) getExternalSymbol(String strName) getFunctionStatement(IMethodInfo method) If this is a parameterized type, returns the generic type this type parameterizes.Returns an array of GenericTypeVariables declared with this Generic Type.List<? extends IGosuAnnotation> getId()getInnerClass(CharSequence relativeName) returns the appropriate inner classIType[]Map<CharSequence, ? extends IGosuClass> IType[]getMemberField(String charSequence) getMemberFunction(IFunctionType funcType, boolean bContravariant) getMemberFunction(IFunctionType funcType, String signature, boolean bContravariant) getMemberFunctions(String names) getMemberProperty(String name) intReturns the modifiers for this type, encoded in an integer.getName()The fully qualified name of this intrinsic type.The namespace for this class.protected GosuParsergetOrCreateParser(CompiledGosuClassSymbolTable symbolTable) protected ITypeRefprotected ITypeRefgetParameterizedType(IType... paramTypes) Assuming this intrinsic type is a Generic type, return the parameterized type associated with the given list of type parameters.!!getPropertyDeclaration(String name) The relative or unqualified name.IFile[]getStaticField(String name) getStaticProperty(String name) WARNING: This method is slow the first time it is called.Returns the type representing the supertype of this type.Get the type information for this intrinsic type.intReturns the type loader responsible for loading this intrinsic type.IType[]If this is a parameterized type, returns the specific types used to create this type, null otherwies.static List<IFunctionType> getUnimplementedMethods(IGosuClass gsIface, IGosuClass implClass, List<IFunctionType> unimpled, boolean ensurePublic, boolean bAcceptAbstract) getUnimplementedMethods(List<IFunctionType> unimpled, IGosuClassInternal implClass, boolean bAcceptAbstract) booleanbooleanbooleanbooleanhasError()booleanbooleanbooleanisAccessible(IGosuClassInternal compilingClass, AbstractDynamicSymbol ads) booleanbooleanbooleanisArray()True if this is an array.booleanisAssignableFrom(IType type) Determines if the type represented by this intrinsic type is either the same as, or is a super-type of the type represented by the specified type parameter.booleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanTrue if this type has been replaced with a newer version of the same name in the type system.booleanisEnum()Returns true if this type is an enumeration.booleanisFinal()True if this type cannot be extended.booleanReturns true if this ia a Generic Type.booleanbooleanbooleanReturns true if this type is an interface.booleanAre intances of this type mutable?booleanReturns true if this ia a Parameterized Type.booleanTrue if this type represents a primitive type e.g., Java int, char, etc.booleanisProxy()booleanisStale()booleanisStatic()booleanbooleanbooleanisSubClass(IType gsSubType) booleanbooleanisValid()Defines this type if it is not yet fully defined.makeArrayInstance(int iLength) Construct an array instance of specified length.protected IGosuClassInternalvoidvoidputClassMembers(GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic) voidputClassMembers(GosuClassTypeLoader loader, GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic) voidputClassMembers(GosuClassTypeLoader loader, GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic, boolean bStaticImport) IType requires this method be implemented to ensure IType instances can be centrally defined and cached.voidremoveBlock(IBlockClass block) voidremoveInnerClass(IGosuClassInternal innerGsClass) resolveRelativeInnerClass(String strRelativeInnerClassName, boolean bForce) voidsetAnnotations(List<IGosuAnnotation> annotations) voidsetArrayComponent(Object array, int iIndex, Object value) Sets the value of the indexed component in the specified array object.voidsetCannotCaptureSymbols(boolean bCannotCaptureSymbols) voidsetCompilingDeclarations(boolean bCompilingDeclarations) voidsetCompilingDefinitions(boolean bCompilingDefinitions) voidsetCompilingHeader(boolean bCompilingHeader) voidsetCreateEditorParser(boolean bEditorParser) voidvoidvoidvoidsetDiscarded(boolean bDiscarded) voidsetEditorParser(GosuParser parser) !!voidsetEnclosingType(IType enclosingType) Only for use during type loading e.g., from GosuClassTypeLoadervoidsetEnum()voidsetFullDescription(String description) voidsetGenericTypeVariables(List<ITypeVariableDefinition> typeVarExprList) voidsetHasAssertions(boolean bHasAssertions) voidvoidvoidsetInterface(boolean bInterface) voidsetJavaType(IJavaType javaType) voidsetModifierInfo(ModifierInfo modifierInfo) voidsetNamespace(String namespace) voidvoidsetStructure(boolean bStructure) voidsetSuperType(IType superType) voidsetTypeUsesMap(ITypeUsesMap usesMap) booleanbooleanbooleanvoidtoString()voidvoidUnload or nullify any references to this IType's ITypeInfo.Methods inherited from class gw.lang.reflect.AbstractType
getLiteralMetaType, getMetaType, getTheRefMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gw.lang.parser.IFileRepositoryBasedType
getJavaNameMethods inherited from interface gw.lang.reflect.IType
getLiteralMetaType, getMetaType, isDynamic
-
Field Details
-
_parseInfo
-
-
Constructor Details
-
GosuClass
public GosuClass(String strNamespace, String strRelativeName, GosuClassTypeLoader classTypeLoader, ISourceFileHandle sourceFile, ITypeUsesMap typeUsesMap) -
GosuClass
-
GosuClass
-
-
Method Details
-
getParseInfo
- Specified by:
getParseInfoin interfaceICompilableTypeInternal- Specified by:
getParseInfoin interfaceIGosuClassInternal
-
hasAssertions
public boolean hasAssertions()- Specified by:
hasAssertionsin interfaceICompilableTypeInternal
-
setHasAssertions
public void setHasAssertions(boolean bHasAssertions) - Specified by:
setHasAssertionsin interfaceIGosuClassInternal
-
dontEverCallThis
- Specified by:
dontEverCallThisin interfaceIGosuClassInternal
-
copyGenericState
public void copyGenericState(boolean bCopyHierarchy) - Specified by:
copyGenericStatein interfaceIGosuClassInternal
-
copyHierarchyInfo
public void copyHierarchyInfo()- Specified by:
copyHierarchyInfoin interfaceIGosuClassInternal
-
getName
Description copied from interface:ITypeThe fully qualified name of this intrinsic type. -
getDisplayName
Description copied from interface:ITypeThe display name of this intrinsic type. Often this is simply the same asIType.getName(), but in some cases a type may want to modify it's name for presentation to the user.- Specified by:
getDisplayNamein interfaceIType
-
getRelativeName
Description copied from interface:ITypeThe relative or unqualified name. For a class this should be just the class name without the package name.- Specified by:
getRelativeNamein interfaceIType
-
getNamespace
Description copied from interface:ITypeThe namespace for this class. For a java class this will be the package, while for other types of intrinsic types it could be another logical name.- Specified by:
getNamespacein interfaceIType
-
setNamespace
- Specified by:
setNamespacein interfaceIGosuClass
-
getTypeLoader
Description copied from interface:ITypeReturns the type loader responsible for loading this intrinsic type.- Specified by:
getTypeLoaderin interfaceICompilableType- Specified by:
getTypeLoaderin interfaceIGosuClassInternal- Specified by:
getTypeLoaderin interfaceIType
-
getSupertype
Description copied from interface:ITypeReturns the type representing the supertype of this type. Returns null if this type has no supertype.- Specified by:
getSupertypein interfaceIType
-
getGenericType
Description copied from interface:ITypeIf this is a parameterized type, returns the generic type this type parameterizes. Otherwise, returns null.- Specified by:
getGenericTypein interfaceIType
-
isFinal
public boolean isFinal()Description copied from interface:ITypeTrue if this type cannot be extended. -
isInterface
public boolean isInterface()Description copied from interface:ITypeReturns true if this type is an interface.- Specified by:
isInterfacein interfaceIType
-
setInterface
public void setInterface(boolean bInterface) - Specified by:
setInterfacein interfaceIGosuClassInternal
-
isStructure
public boolean isStructure()- Specified by:
isStructurein interfaceIGosuClass
-
setStructure
public void setStructure(boolean bStructure) - Specified by:
setStructurein interfaceIGosuClassInternal
-
isEnum
public boolean isEnum()Description copied from interface:ITypeReturns true if this type is an enumeration. -
setEnum
public void setEnum()- Specified by:
setEnumin interfaceIGosuClassInternal
-
getEnumConstants
- Specified by:
getEnumConstantsin interfaceIEnumData
-
getEnumValues
- Specified by:
getEnumValuesin interfaceIEnumData
-
getEnumValue
- Specified by:
getEnumValuein interfaceIEnumData
-
getInterfaces
- Specified by:
getInterfacesin interfaceIType- Returns:
- If this is a class, returns a list of all the interfaces this type implements. Similarly, if this is an interface, returns a list of all the interfaces this type extends. In any case, returns an empty list if this type neither implements nor extends interfaces.
-
addInterface
- Specified by:
addInterfacein interfaceIGosuClassInternal
-
getJavaType
- Specified by:
getJavaTypein interfaceIGosuClass
-
setJavaType
- Specified by:
setJavaTypein interfaceIGosuClassInternal
-
findProxiedClassInHierarchy
- Specified by:
findProxiedClassInHierarchyin interfaceIGosuClass
-
isParameterizedType
public boolean isParameterizedType()Description copied from interface:ITypeReturns true if this ia a Parameterized Type. Note a Parameterzied Type is not the same as a Generic Type. The difference is that a Parameterized Type is a concrete version of a Generic Type. For instance, the class ArrayListis a Generic Type, while the class ArrayList is a Parameterized Type of the the Generic Type ArrayList . - Specified by:
isParameterizedTypein interfaceIType
-
isGenericType
public boolean isGenericType()Description copied from interface:ITypeReturns true if this ia a Generic Type.- Specified by:
isGenericTypein interfaceIType- See Also:
-
getGenericTypeVariables
Description copied from interface:ITypeReturns an array of GenericTypeVariables declared with this Generic Type. Otherwise, returns null if this is not a Generic Type.- Specified by:
getGenericTypeVariablesin interfaceIType
-
getParameterizedType
Description copied from interface:ITypeAssuming this intrinsic type is a Generic type, return the parameterized type associated with the given list of type parameters. If the type has not been created yet, creates the parameterized type. Successive calls to this method having identical parameter types must return the identical parameterized type.- Specified by:
getParameterizedTypein interfaceIType- Parameters:
paramTypes- The type parameters.- Returns:
- The concrete type associated with the type parameters.
-
makeCopy
-
getTypeParameters
Description copied from interface:ITypeIf this is a parameterized type, returns the specific types used to create this type, null otherwies.- Specified by:
getTypeParametersin interfaceIType
-
getAllTypesInHierarchy
Description copied from interface:ITypeReturns a Set of all IIntrinsicTypes that this class is assignable from, including this class. This includes implemented interfaces and superclasses, recursively up the hieararchy. For array types, this will be a Set of all types that its component type is assignable from.- Specified by:
getAllTypesInHierarchyin interfaceIType
-
isArray
public boolean isArray()Description copied from interface:ITypeTrue if this is an array. -
isPrimitive
public boolean isPrimitive()Description copied from interface:ITypeTrue if this type represents a primitive type e.g., Java int, char, etc.- Specified by:
isPrimitivein interfaceIType
-
getArrayType
Description copied from interface:ITypeMake an array type from this type. E.g., String -> String[]- Specified by:
getArrayTypein interfaceIType
-
makeArrayInstance
Description copied from interface:ITypeConstruct an array instance of specified length.- Specified by:
makeArrayInstancein interfaceIType
-
getArrayComponent
public Object getArrayComponent(Object array, int iIndex) throws IllegalArgumentException, ArrayIndexOutOfBoundsException Description copied from interface:ITypeReturns the value of the indexed component in the specified array object.- Specified by:
getArrayComponentin interfaceIType- Parameters:
array- An array instance of this intrinsic type.iIndex- The index of the component to get.- Returns:
- The value of the indexed component in the specified array.
- Throws:
IllegalArgumentException- If the specified object is not an array.ArrayIndexOutOfBoundsException- If the specified index argument is negative, or if it is greater than or equal to the length of the specified array
-
setArrayComponent
public void setArrayComponent(Object array, int iIndex, Object value) throws IllegalArgumentException, ArrayIndexOutOfBoundsException Description copied from interface:ITypeSets the value of the indexed component in the specified array object.- Specified by:
setArrayComponentin interfaceIType- Parameters:
array- An array instance of this intrinsic type.iIndex- The index of the component to set.value- The new value of the indexed component.- Throws:
IllegalArgumentException- If the specified object is not an array.ArrayIndexOutOfBoundsException- If the specified index argument is negative, or if it is greater than or equal to the length of the specified array
-
getArrayLength
Description copied from interface:ITypeReturns the length of the specified array object.- Specified by:
getArrayLengthin interfaceIType- Parameters:
array- An array instance of this intrinsic type.- Returns:
- The length of the array.
- Throws:
IllegalArgumentException- If the object argument is not an array.
-
getComponentType
Description copied from interface:ITypeIf this is an array type, a type representing the component type of the array. Otherwise null.- Specified by:
getComponentTypein interfaceIType
-
isAssignableFrom
Description copied from interface:ITypeDetermines if the type represented by this intrinsic type is either the same as, or is a super-type of the type represented by the specified type parameter.- Specified by:
isAssignableFromin interfaceIType
-
isStrictGenerics
public boolean isStrictGenerics()- Specified by:
isStrictGenericsin interfaceIParameterizableType
-
isMutable
public boolean isMutable()Description copied from interface:ITypeAre intances of this type mutable? Note sometimes it's difficult to determine. For instance, java classes don't contain any information about mutability. In which case we always assume mutable, even when the underlying type may in fact be immutable. E.g., even though java.lang.String is not mutable, its corresponding JavaIntrinsicType will say it is. -
isValid
public boolean isValid()Description copied from interface:ITypeDefines this type if it is not yet fully defined. For instance, if this type has source code associated with it, it must fully compile the source for it to be fully defined. -
isStatic
public boolean isStatic()- Specified by:
isStaticin interfaceICompilableType
-
getModifierInfo
- Specified by:
getModifierInfoin interfaceIGosuClass
-
setModifierInfo
- Specified by:
setModifierInfoin interfaceIGosuClassInternal
-
getModifiers
public int getModifiers()Description copied from interface:ITypeReturns the modifiers for this type, encoded in an integer. The modifiers consist of the constants forpublic,protected,private,final,static,abstractthey should be decoded using the methods of classModifier.- Specified by:
getModifiersin interfaceIType- See Also:
-
markStatic
public void markStatic()- Specified by:
markStaticin interfaceIGosuClassInternal
-
isAbstract
public boolean isAbstract()- Specified by:
isAbstractin interfaceIType
-
getTypeInfo
Description copied from interface:ITypeGet the type information for this intrinsic type.- Specified by:
getTypeInfoin interfaceICompilableType- Specified by:
getTypeInfoin interfaceIGosuClass- Specified by:
getTypeInfoin interfaceIType- See Also:
-
hasAncestorBeenUpdated
public boolean hasAncestorBeenUpdated() -
unloadTypeInfo
public void unloadTypeInfo()Description copied from interface:ITypeUnload or nullify any references to this IType's ITypeInfo.- Specified by:
unloadTypeInfoin interfaceIType
-
readResolve
Description copied from interface:ITypeIType requires this method be implemented to ensure IType instances can be centrally defined and cached.- Specified by:
readResolvein interfaceIType- Throws:
ObjectStreamException
-
getId
-
getSource
- Specified by:
getSourcein interfaceICompilableTypeInternal- Specified by:
getSourcein interfaceIGosuClass
-
isStale
public boolean isStale()- Specified by:
isStalein interfaceIGosuClassInternal- Returns:
- True if this type is no longer current or has been unloaded.
-
getTypeInfoChecksum
public int getTypeInfoChecksum()- Specified by:
getTypeInfoChecksumin interfaceIGosuClassInternal
-
isProxy
public boolean isProxy()- Specified by:
isProxyin interfaceIGosuClassInternal
-
getFunctionalInterface
- Specified by:
getFunctionalInterfacein interfaceIType
-
getOrCreateTypeReference
-
getOrCreateTypeReference
-
isSubClass
- Specified by:
isSubClassin interfaceIGosuClass
-
isCompiled
public boolean isCompiled()- Specified by:
isCompiledin interfaceIGosuClass
-
getConstructorFunctions
- Specified by:
getConstructorFunctionsin interfaceIGosuClassInternal
-
getConstructorFunction
- Specified by:
getConstructorFunctionin interfaceIGosuClassInternal
-
getDefaultConstructor
- Specified by:
getDefaultConstructorin interfaceIGosuClassInternal
-
getStaticFunctions
- Specified by:
getStaticFunctionsin interfaceIGosuClassInternal
-
getInnerClassesMap
- Specified by:
getInnerClassesMapin interfaceIGosuClass
-
getInnerClasses
- Specified by:
getInnerClassesin interfaceIGosuClass- Specified by:
getInnerClassesin interfaceIHasInnerClass
-
getKnownInnerClassesWithoutCompiling
- Specified by:
getKnownInnerClassesWithoutCompilingin interfaceIGosuClass
-
getBlock
- Specified by:
getBlockin interfaceICompilableType
-
addInnerClass
- Specified by:
addInnerClassin interfaceIGosuClassInternal
-
removeInnerClass
- Specified by:
removeInnerClassin interfaceIGosuClassInternal
-
resolveRelativeInnerClass
- Specified by:
resolveRelativeInnerClassin interfaceIHasInnerClass- Overrides:
resolveRelativeInnerClassin classInnerClassCapableType
-
getMemberFunctions
- Specified by:
getMemberFunctionsin interfaceIGosuClass
-
getMemberFunction
public DynamicFunctionSymbol getMemberFunction(IFunctionType funcType, String signature, boolean bContravariant) - Specified by:
getMemberFunctionin interfaceIGosuClassInternal
-
getMemberFunctions
- Specified by:
getMemberFunctionsin interfaceICompilableTypeInternal- Specified by:
getMemberFunctionsin interfaceIGosuClassInternal
-
getMemberFunction
- Specified by:
getMemberFunctionin interfaceIGosuClassInternal
-
getStaticProperty
- Specified by:
getStaticPropertyin interfaceICompilableTypeInternal- Specified by:
getStaticPropertyin interfaceIGosuClassInternal
-
getStaticProperties
- Specified by:
getStaticPropertiesin interfaceIGosuClassInternal
-
getMemberProperties
- Specified by:
getMemberPropertiesin interfaceIGosuClassInternal
-
getMemberProperty
- Specified by:
getMemberPropertyin interfaceICompilableTypeInternal- Specified by:
getMemberPropertyin interfaceIGosuClass- Specified by:
getMemberPropertyin interfaceIGosuClassInternal
-
getStaticFields
- Specified by:
getStaticFieldsin interfaceICompilableTypeInternal- Specified by:
getStaticFieldsin interfaceIGosuClassInternal
-
getStaticField
- Specified by:
getStaticFieldin interfaceIGosuClassInternal
-
getMemberFieldIndexByName
- Specified by:
getMemberFieldIndexByNamein interfaceIGosuClassInternal
-
getMemberFields
- Specified by:
getMemberFieldsin interfaceICompilableTypeInternal- Specified by:
getMemberFieldsin interfaceIGosuClass
-
getMemberFieldsMap
- Specified by:
getMemberFieldsMapin interfaceIGosuClass
-
getStaticThisSymbol
- Specified by:
getStaticThisSymbolin interfaceIGosuClassInternal
-
getCapturedSymbols
- Specified by:
getCapturedSymbolsin interfaceICompilableTypeInternal- Specified by:
getCapturedSymbolsin interfaceIGosuClassInternal
-
getCapturedSymbol
- Specified by:
getCapturedSymbolin interfaceICompilableTypeInternal- Specified by:
getCapturedSymbolin interfaceIGosuClassInternal
-
addCapturedSymbol
- Specified by:
addCapturedSymbolin interfaceICompilableTypeInternal- Specified by:
addCapturedSymbolin interfaceIGosuClassInternal
-
ensureDefaultConstructor
- Specified by:
ensureDefaultConstructorin interfaceIGosuClassInternal
-
getClassStatement
- Specified by:
getClassStatementin interfaceICompilableType- Returns:
- The ClassStatement (root ParsedElement) for this GosuClass
NOTE: Because GosuClass is lazily compiled, the ClassStatement returned is NOT guaranteed to be fully compiled by this method, and may return only the declarations of the class. If you wish to access the fully compiled ClassStatement you must call
compileDefinitionsIfNeeded().
-
getClassStatementWithoutCompile
- Specified by:
getClassStatementWithoutCompilein interfaceIGosuClass
-
toString
-
setSuperType
- Specified by:
setSuperTypein interfaceIGosuClassInternal
-
setEnclosingType
Description copied from interface:IGosuClassOnly for use during type loading e.g., from GosuClassTypeLoader- Specified by:
setEnclosingTypein interfaceIGosuClass- Parameters:
enclosingType- the enclosing type
-
getEnclosingTypeReference
- Specified by:
getEnclosingTypeReferencein interfaceIGosuClass
-
isAnonymous
public boolean isAnonymous()- Specified by:
isAnonymousin interfaceICompilableType
-
getDepth
public int getDepth()- Specified by:
getDepthin interfaceICompilableTypeInternal- Specified by:
getDepthin interfaceIGosuClassInternal
-
compileDefinitionsIfNeeded
public void compileDefinitionsIfNeeded()- Specified by:
compileDefinitionsIfNeededin interfaceIGosuClassInternal
-
compileDefinitionsIfNeeded
public void compileDefinitionsIfNeeded(boolean bForce) - Specified by:
compileDefinitionsIfNeededin interfaceICompilableTypeInternal- Specified by:
compileDefinitionsIfNeededin interfaceIGosuClassInternal
-
compileDeclarationsIfNeeded
public void compileDeclarationsIfNeeded()- Specified by:
compileDeclarationsIfNeededin interfaceICompilableTypeInternal- Specified by:
compileDeclarationsIfNeededin interfaceIGosuClassInternal
-
forceTypeInfoInitialization
public void forceTypeInfoInitialization()- Specified by:
forceTypeInfoInitializationin interfaceIGosuClassInternal
-
syncGenericAndParameterizedClasses
public void syncGenericAndParameterizedClasses()- Specified by:
syncGenericAndParameterizedClassesin interfaceIGosuClassInternal
-
getParameterizedTypes
- Specified by:
getParameterizedTypesin interfaceIGosuClassInternal
-
setAnnotations
- Specified by:
setAnnotationsin interfaceIGosuClassInternal
-
getEnclosingNonBlockType
- Specified by:
getEnclosingNonBlockTypein interfaceICompilableTypeInternal- Specified by:
getEnclosingNonBlockTypein interfaceIGosuClassInternal
-
compileHeaderIfNeeded
public void compileHeaderIfNeeded()- Specified by:
compileHeaderIfNeededin interfaceICompilableTypeInternal- Specified by:
compileHeaderIfNeededin interfaceIGosuClassInternal
-
getCompilationState
public gw.internal.gosu.parser.CompilationState getCompilationState()- Specified by:
getCompilationStatein interfaceIGosuClass
-
isCompilingHeader
public boolean isCompilingHeader()- Specified by:
isCompilingHeaderin interfaceIGosuClass
-
setCompilingHeader
public void setCompilingHeader(boolean bCompilingHeader) - Specified by:
setCompilingHeaderin interfaceIGosuClassInternal
-
isHeaderCompiled
public boolean isHeaderCompiled()- Specified by:
isHeaderCompiledin interfaceIGosuClass
-
setHeaderCompiled
public void setHeaderCompiled()- Specified by:
setHeaderCompiledin interfaceIGosuClassInternal
-
isCompilingDeclarations
public boolean isCompilingDeclarations()- Specified by:
isCompilingDeclarationsin interfaceIGosuClass
-
setCompilingDeclarations
public void setCompilingDeclarations(boolean bCompilingDeclarations) - Specified by:
setCompilingDeclarationsin interfaceIGosuClassInternal
-
isDeclarationsCompiled
public boolean isDeclarationsCompiled()- Specified by:
isDeclarationsCompiledin interfaceIGosuClass
-
isDeclarationsBypassed
public boolean isDeclarationsBypassed()- Specified by:
isDeclarationsBypassedin interfaceIGosuClass
-
setDeclarationsBypassed
public void setDeclarationsBypassed()- Specified by:
setDeclarationsBypassedin interfaceIGosuClassInternal
-
isInnerDeclarationsCompiled
public boolean isInnerDeclarationsCompiled()- Specified by:
isInnerDeclarationsCompiledin interfaceIGosuClass
-
setDeclarationsCompiled
public void setDeclarationsCompiled()- Specified by:
setDeclarationsCompiledin interfaceIGosuClassInternal
-
setInnerDeclarationsCompiled
public void setInnerDeclarationsCompiled()- Specified by:
setInnerDeclarationsCompiledin interfaceIGosuClassInternal
-
isCompilingDefinitions
public boolean isCompilingDefinitions()- Specified by:
isCompilingDefinitionsin interfaceIGosuClass
-
shouldFullyCompileAnnotations
public boolean shouldFullyCompileAnnotations()- Specified by:
shouldFullyCompileAnnotationsin interfaceICompilableTypeInternal
-
setCompilingDefinitions
public void setCompilingDefinitions(boolean bCompilingDefinitions) - Specified by:
setCompilingDefinitionsin interfaceIGosuClassInternal
-
isDefinitionsCompiled
public boolean isDefinitionsCompiled()- Specified by:
isDefinitionsCompiledin interfaceIGosuClass
-
setDefinitionsCompiled
public void setDefinitionsCompiled()- Specified by:
setDefinitionsCompiledin interfaceIGosuClassInternal
-
getSourceFileHandle
- Specified by:
getSourceFileHandlein interfaceIFileRepositoryBasedType
-
getLoadedInnerClasses
- Specified by:
getLoadedInnerClassesin interfaceIHasInnerClass
-
getClassType
- Specified by:
getClassTypein interfaceIFileRepositoryBasedType
-
getGosuAnnotations
- Specified by:
getGosuAnnotationsin interfaceICompilableTypeInternal- Specified by:
getGosuAnnotationsin interfaceIGosuClassInternal
-
createNewParseInfo
When changing the places from which this method is called run pc's gw.smoketest.pc.job.common.effectivetime.VisibleEffectiveTimeTest cause it will break!- Specified by:
createNewParseInfoin interfaceIGosuClassInternal
-
isTestClass
public boolean isTestClass()- Specified by:
isTestClassin interfaceIGosuClass
-
getInnerClass
Description copied from interface:IHasInnerClassreturns the appropriate inner class- Specified by:
getInnerClassin interfaceIGosuClass- Specified by:
getInnerClassin interfaceIHasInnerClass- Parameters:
relativeName-- Returns:
-
getMemberField
- Specified by:
getMemberFieldin interfaceICompilableTypeInternal- Specified by:
getMemberFieldin interfaceIGosuClassInternal
-
shouldKeepDebugInfo
public boolean shouldKeepDebugInfo()- Specified by:
shouldKeepDebugInfoin interfaceIGosuClass
-
getSuperClass
- Specified by:
getSuperClassin interfaceIGosuClassInternal
-
getEnclosingType
Description copied from interface:ITypeReturns the type immediately enclosing this type. If this type is not enclosed, returns null.- Specified by:
getEnclosingTypein interfaceICompilableType- Specified by:
getEnclosingTypein interfaceICompilableTypeInternal- Specified by:
getEnclosingTypein interfaceIType
-
hasBackingClass
public boolean hasBackingClass()- Specified by:
hasBackingClassin interfaceIGosuClass
-
unloadBackingClass
public void unloadBackingClass()- Specified by:
unloadBackingClassin interfaceIGosuClass
-
getBackingClass
- Specified by:
getBackingClassin interfaceIHasJavaClass
-
isCompilable
public boolean isCompilable()- Specified by:
isCompilablein interfaceIType
-
compile
public byte[] compile() -
getExternalSymbol
- Specified by:
getExternalSymbolin interfaceICompilableType
-
putClassMembers
public void putClassMembers(GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic) - Specified by:
putClassMembersin interfaceICompilableTypeInternal- Specified by:
putClassMembersin interfaceIGosuClassInternal
-
putClassMembers
public void putClassMembers(GosuClassTypeLoader loader, GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic) - Specified by:
putClassMembersin interfaceICompilableTypeInternal- Specified by:
putClassMembersin interfaceIGosuClassInternal
-
putClassMembers
public void putClassMembers(GosuClassTypeLoader loader, GosuParser owner, ISymbolTable table, IGosuClassInternal gsContextClass, boolean bStatic, boolean bStaticImport) - Specified by:
putClassMembersin interfaceIGosuClassInternal
-
isAccessible
- Specified by:
isAccessiblein interfaceIGosuClassInternal
-
setParseResultsException
- Specified by:
setParseResultsExceptionin interfaceIGosuClassInternal
-
hasError
public boolean hasError()- Specified by:
hasErrorin interfaceIGosuClass
-
hasWarnings
public boolean hasWarnings()- Specified by:
hasWarningsin interfaceIGosuClass
-
getParseResultsException
- Specified by:
getParseResultsExceptionin interfaceIGosuClass
-
compareTo
- Specified by:
compareToin interfaceComparable
-
shouldResolve
public boolean shouldResolve()- Specified by:
shouldResolvein interfaceIGosuClassInternal
-
getTypeUsesMap
- Specified by:
getTypeUsesMapin interfaceICompilableType
-
setTypeUsesMap
- Specified by:
setTypeUsesMapin interfaceIGosuClassInternal
-
assignTypeUsesMap
- Specified by:
assignTypeUsesMapin interfaceICompilableTypeInternal- Specified by:
assignTypeUsesMapin interfaceIGosuClassInternal
-
setEditorParser
!! Used only when compiling from an edtior !!- Specified by:
setEditorParserin interfaceIGosuClassInternal
-
setCreateEditorParser
public void setCreateEditorParser(boolean bEditorParser) - Specified by:
setCreateEditorParserin interfaceIGosuClass
-
isCreateEditorParser
public boolean isCreateEditorParser()- Specified by:
isCreateEditorParserin interfaceICompilableTypeInternal- Specified by:
isCreateEditorParserin interfaceIGosuClassInternal
-
getAnonymousInnerClassCount
public int getAnonymousInnerClassCount()- Specified by:
getAnonymousInnerClassCountin interfaceICompilableTypeInternal
-
getParser
!! The parser is only set when this class is parsed in an editor in an IDE !!- Specified by:
getParserin interfaceICompilableType
-
getOrCreateParser
-
addDelegateImpls
- Specified by:
addDelegateImplsin interfaceIGosuClassInternal
-
getUnimplementedMethods
- Specified by:
getUnimplementedMethodsin interfaceIGosuClassInternal
-
getUnimplementedMethods
public List<IFunctionType> getUnimplementedMethods(List<IFunctionType> unimpled, IGosuClassInternal implClass, boolean bAcceptAbstract) - Specified by:
getUnimplementedMethodsin interfaceIGosuClassInternal
-
getUnimplementedMethods
public static List<IFunctionType> getUnimplementedMethods(IGosuClass gsIface, IGosuClass implClass, List<IFunctionType> unimpled, boolean ensurePublic, boolean bAcceptAbstract) -
setFullDescription
- Specified by:
setFullDescriptionin interfaceIGosuClassInternal
-
getFullDescription
- Specified by:
getFullDescriptionin interfaceIGosuClassInternal
-
getSubtypes
Description copied from interface:IGosuClassWARNING: This method is slow the first time it is called. It will iterate over all types in the system and find all matching subtypes- Specified by:
getSubtypesin interfaceIGosuClass- Returns:
- all subtypes of this type
-
isDiscarded
public boolean isDiscarded()Description copied from interface:ITypeTrue if this type has been replaced with a newer version of the same name in the type system.- Specified by:
isDiscardedin interfaceIType
-
setDiscarded
public void setDiscarded(boolean bDiscarded) - Specified by:
setDiscardedin interfaceIType
-
isCompoundType
public boolean isCompoundType()- Specified by:
isCompoundTypein interfaceIType
-
getCompoundTypeComponents
- Specified by:
getCompoundTypeComponentsin interfaceIType
-
isCannotCaptureSymbols
public boolean isCannotCaptureSymbols()- Specified by:
isCannotCaptureSymbolsin interfaceIGosuClassInternal
-
setCannotCaptureSymbols
public void setCannotCaptureSymbols(boolean bCannotCaptureSymbols) - Specified by:
setCannotCaptureSymbolsin interfaceIGosuClassInternal
-
getBlocks
- Specified by:
getBlocksin interfaceIGosuClass- Specified by:
getBlocksin interfaceIGosuClassInternal
-
getBlockCount
public int getBlockCount()- Specified by:
getBlockCountin interfaceICompilableTypeInternal- Specified by:
getBlockCountin interfaceIGosuClassInternal
-
addBlock
- Specified by:
addBlockin interfaceICompilableTypeInternal- Specified by:
addBlockin interfaceIGosuClassInternal
-
removeBlock
- Specified by:
removeBlockin interfaceICompilableTypeInternal- Specified by:
removeBlockin interfaceIGosuClassInternal
-
assignTypeVarsFromTypeParams
Note a gosu class can be BOTH parameterzied AND generic. For example, class Bar{ function blah() : T {...} } class Foo extends Bar {} The class Bar here is parameterized by the type var from Foo, yet it is still a generic class. The blah() method in Foo's typeinfo must have a return type consistent with Foo's type var upper bound, CharSequence. //## todo: maybe we don't need this concept any longer? i.e., parameterization should work correctly regardless. -
getTypeVarDefs
-
setGenericTypeVariables
- Specified by:
setGenericTypeVariablesin interfaceIGosuClassInternal
-
getFunctionStatement
- Specified by:
getFunctionStatementin interfaceIGosuClass
-
getPropertyDeclaration
- Specified by:
getPropertyDeclarationin interfaceIGosuClass
-
getConstructorStatement
- Specified by:
getConstructorStatementin interfaceIGosuClass
-
getLoaderParameterizedTypes
- Specified by:
getLoaderParameterizedTypesin interfaceIParameterizableType
-
getSourceFiles
- Specified by:
getSourceFilesin interfaceIType
-
isAnnotation
public boolean isAnnotation()- Specified by:
isAnnotationin interfaceICanBeAnnotation
-