Package gw.internal.gosu.parser
Class CompoundTypeInfo
java.lang.Object
gw.lang.reflect.BaseFeatureInfo
gw.lang.reflect.BaseTypeInfo
gw.internal.gosu.parser.CompoundTypeInfo
- All Implemented Interfaces:
IAnnotatedFeatureInfo
,IAttributedFeatureInfo
,IFeatureInfo
,IRelativeTypeInfo
,ITypeInfo
-
Nested Class Summary
Nested classes/interfaces inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
IAnnotatedFeatureInfo.IAnnotationInfoHelper
Nested classes/interfaces inherited from interface gw.lang.reflect.IAttributedFeatureInfo
IAttributedFeatureInfo.MODIFIER
Nested classes/interfaces inherited from interface gw.lang.reflect.IRelativeTypeInfo
IRelativeTypeInfo.Accessibility
Nested classes/interfaces inherited from interface gw.lang.reflect.ITypeInfo
ITypeInfo.FIND
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate MethodList
private List<IPropertyInfo>
private Map<CharSequence,
IPropertyInfo> Fields inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
ANNOTATION_HELPER
Fields inherited from interface gw.lang.reflect.IRelativeTypeInfo
Accessibility_Size
Fields inherited from interface gw.lang.reflect.ITypeInfo
TYPEINFO_EXT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
private void
getAccessibilityForType
(IType whosAskin) getCallableConstructor
(IType... params) Returns a IConstructorInfo matching the specified parameter types or null if no match is found.getCallableMethod
(CharSequence strMethod, IType... params) Returns a IMethodInfo matching the specified name and has parameter types that produce the best match.getConstructor
(IType... params) Returns a IConstructorInfo that has parameter types that produce the best match.getConstructor
(IType whosAskin, IType[] params) List<? extends IConstructorInfo>
getConstructors
(IType whosaskin) List<? extends IConstructorInfo>
Returns a list ofIConstructorInfo
objects reflecting all the constructors declared by the class represented by thisIType
object.List<? extends IMethodInfo>
Returns a list ofIMethodInfo
objects reflecting all the methods declared by the class or interface represented by thisIType
object.List<? extends IPropertyInfo>
Returns a list ofIPropertyInfo
objects reflecting all the properties declared by the class or interface represented by thisIType
object.getEvent
(CharSequence strEvent) Get an event mapped to the specified name.getMethod
(IType whosaskin, CharSequence methodName, IType... params) getMethod
(CharSequence methodName, IType... params) Returns a IMethodInfo matching the specified name and parameter types or null if no match is found.getMethods
(IType whosaskin) Get this feature's owner's type.List<? extends IPropertyInfo>
List<? extends IPropertyInfo>
getProperties
(IType whosaskin) getProperty
(IType whosaskin, CharSequence propName) getProperty
(CharSequence propName) Get a property mapped to the specified name.private boolean
isHidden
(IRelativeTypeInfo.Accessibility accessibility, IAttributedFeatureInfo fi) Methods inherited from class gw.lang.reflect.BaseTypeInfo
getName, isStatic
Methods inherited from class gw.lang.reflect.BaseFeatureInfo
getAnnotation, getAnnotations, getAnnotationsOfType, getContainer, getDeprecatedReason, getDescription, getDisplayName, getParamTypes, getSuperAnnotatedElements, hasAnnotation, hasDeclaredAnnotation, isAbstract, isDefaultImpl, isDeprecated, isFinal, isHidden, isInternal, isInternalAPI, isPrivate, isProtected, isPublic, isReified, isScriptable, isVisible, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
getAnnotation, getAnnotations, getAnnotationsOfType, getDeprecatedReason, hasAnnotation, hasDeclaredAnnotation, isDefaultImpl, isDeprecated
Methods inherited from interface gw.lang.reflect.IFeatureInfo
getContainer, getDescription, getDisplayName, getLocationInfo, getName
-
Field Details
-
_propertiesByName
-
_properties
-
_methods
-
-
Constructor Details
-
CompoundTypeInfo
-
-
Method Details
-
getOwnersType
Description copied from interface:IFeatureInfo
Get this feature's owner's type. If this feature has no owner, this is the type of the feature itself. Typically, the only kind of feature w/o an owner is an ITypeInfo, so properties, methods, params, etc. s/b considered owned. Hence, ultimately an ITypeInfo's type will be the owner's type for any given feature.- Specified by:
getOwnersType
in interfaceIFeatureInfo
- Overrides:
getOwnersType
in classBaseFeatureInfo
-
getProperties
- Specified by:
getProperties
in interfaceITypeInfo
- Overrides:
getProperties
in classBaseTypeInfo
- Returns:
- An unmodifiable random access list of
IPropertyInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no properties.
-
getProperty
Description copied from interface:ITypeInfo
Get a property mapped to the specified name.- Specified by:
getProperty
in interfaceITypeInfo
- Overrides:
getProperty
in classBaseTypeInfo
- Parameters:
propName
- The property name.- Returns:
- An IPropertyInfo corresponding to the property name.
-
getMethods
- Specified by:
getMethods
in interfaceITypeInfo
- Overrides:
getMethods
in classBaseTypeInfo
- Returns:
- An unmodifiable random access list of
IMethodInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no methods.
-
getMethod
Description copied from interface:ITypeInfo
Returns a IMethodInfo matching the specified name and parameter types or null if no match is found. Noteparams
must exactly match those of the target method in number, order, and type. If null,params
is treated as an empty array.- Specified by:
getMethod
in interfaceITypeInfo
- Overrides:
getMethod
in classBaseTypeInfo
- Parameters:
methodName
- The name of the method to find.params
- Represents the exact number, order, and type of parameters in the method. A null value here is treated as an empty array.- Returns:
- A IMethodInfo matching the name and parameter types.
-
getConstructors
- Specified by:
getConstructors
in interfaceITypeInfo
- Overrides:
getConstructors
in classBaseTypeInfo
- Returns:
- An unmodifiable random access list of
IConstructorInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no constructors.
-
getConstructor
Description copied from interface:ITypeInfo
Returns a IConstructorInfo that has parameter types that produce the best match. If there is a tie with method names then this will throw an illegal argument exception.- Specified by:
getConstructor
in interfaceITypeInfo
- Overrides:
getConstructor
in classBaseTypeInfo
- Parameters:
params
- Represents the exact number, order, and type of parameters in the constructor. A null value here is treated as an empty array.- Returns:
- A IConstructorInfo matching the parameter types.
-
getCallableMethod
Description copied from interface:ITypeInfo
Returns a IMethodInfo matching the specified name and has parameter types that produce the best match. If there is a tie with method names then this will throw an illegal argument exception.- Specified by:
getCallableMethod
in interfaceITypeInfo
- Overrides:
getCallableMethod
in classBaseTypeInfo
- Parameters:
strMethod
- The name of the method to find.params
- Represents the exact number, order, and type of parameters in the method. A null value here is treated as an empty array.- Returns:
- A IMethodInfo matching the name and parameter types.
-
getCallableConstructor
Description copied from interface:ITypeInfo
Returns a IConstructorInfo matching the specified parameter types or null if no match is found.- Specified by:
getCallableConstructor
in interfaceITypeInfo
- Overrides:
getCallableConstructor
in classBaseTypeInfo
- Parameters:
params
- Represents the exact number, order, and type of parameters in the constructor. A null value here is treated as an empty array.- Returns:
- A IConstructorInfo matching the parameter types.
-
getEvents
- Specified by:
getEvents
in interfaceITypeInfo
- Overrides:
getEvents
in classBaseTypeInfo
- Returns:
- An unmodifiable random access list of
IEventInfo
instances. The list is sorted ascending by name. Returns an empty list if ther are no events.
-
getEvent
Description copied from interface:ITypeInfo
Get an event mapped to the specified name.- Specified by:
getEvent
in interfaceITypeInfo
- Overrides:
getEvent
in classBaseTypeInfo
- Parameters:
strEvent
- The event name.- Returns:
- An IEventInfo corresponding to the event name.
-
extractProperties
private void extractProperties() -
extractMethods
private void extractMethods() -
getDeclaredAnnotations
- Specified by:
getDeclaredAnnotations
in interfaceIAnnotatedFeatureInfo
- Overrides:
getDeclaredAnnotations
in classBaseTypeInfo
- Returns:
- A map of AnnotationInfo objects by type representing all the annotations associated with this feature, or an empty map if there are no annotations.
-
getAccessibilityForType
- Specified by:
getAccessibilityForType
in interfaceIRelativeTypeInfo
-
getProperties
- Specified by:
getProperties
in interfaceIRelativeTypeInfo
-
getProperty
- Specified by:
getProperty
in interfaceIRelativeTypeInfo
-
getMethods
- Specified by:
getMethods
in interfaceIRelativeTypeInfo
-
getMethod
- Specified by:
getMethod
in interfaceIRelativeTypeInfo
-
isHidden
-
getConstructors
- Specified by:
getConstructors
in interfaceIRelativeTypeInfo
-
getConstructor
- Specified by:
getConstructor
in interfaceIRelativeTypeInfo
-
getDeclaredProperties
Description copied from interface:IRelativeTypeInfo
Returns a list ofIPropertyInfo
objects reflecting all the properties declared by the class or interface represented by thisIType
object. This includes public, protected, internal access, and private properties, but excludes inherited properties. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any properties- Specified by:
getDeclaredProperties
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IPropertyInfo
objects representing all the declared properties of this class
-
getDeclaredMethods
Description copied from interface:IRelativeTypeInfo
Returns a list ofIMethodInfo
objects reflecting all the methods declared by the class or interface represented by thisIType
object. This includes public, protected, internal access, and private methods, but excludes inherited methods. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any methods- Specified by:
getDeclaredMethods
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IMethodInfo
objects representing all the declared methods of this class
-
getDeclaredConstructors
Description copied from interface:IRelativeTypeInfo
Returns a list ofIConstructorInfo
objects reflecting all the constructors declared by the class represented by thisIType
object. This includes public, protected, internal access, and private constructors. Interfaces and arrays always return an empty list. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any methods- Specified by:
getDeclaredConstructors
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IConstructorInfo
objects representing all the declared methods of this class
-