com.adobe.flexbuilder.codemodel.definitions
Interface IClass

All Superinterfaces:
IDefinition, IType

public interface IClass
extends IType

Interface for a class node.


Method Summary
 IClass[] getAncestry()
          Get the ancestral stack for this class, from this class all the way to Object.
 IClass getBaseClassDefinition(java.util.Set recursionGuard)
          Get the definition of the base class.
 IInterface[] getInterfaceDefinitions(java.util.Set recursionGuard)
          Get the definitions of the implemented interfaces.
 IMetaTag[] getMetaTagsByName(java.lang.String name)
          Retrieve all of the meta attributes (e.g.
 XMLName resolveToComponentTag()
          Try to resolve this class as an MXML component.
 
Methods inherited from interface com.adobe.flexbuilder.codemodel.definitions.IType
getAllMembers, getMemberByName, isInstanceOf
 
Methods inherited from interface com.adobe.flexbuilder.codemodel.definitions.IDefinition
getContainingFilePath, getContainingSourceFilePath, getMetaTags, getName, getNameEnd, getNamespace, getNameStart, getPackageName, getQualifiedName, getShortName, hasModifier, hasNamespace, isImplicit, resolveNamespace
 

Method Detail

getAncestry

public IClass[] getAncestry()
Get the ancestral stack for this class, from this class all the way to Object.

Returns:
ancestral stack, starting with this class

getBaseClassDefinition

public IClass getBaseClassDefinition(java.util.Set recursionGuard)
Get the definition of the base class. If you are using a recursion guard, and the base class is already in the set, that means that there is a loop in the inheritance chain. In that case, we will return null.

Parameters:
recursionGuard - set used to identify loops in the inheritance chain (so that we can break out of them)
Returns:
base class definition

getInterfaceDefinitions

public IInterface[] getInterfaceDefinitions(java.util.Set recursionGuard)
Get the definitions of the implemented interfaces. This only returns the interfaces explicitly implemented by the current class... not those that are implemented by base classes or those that are extended by other interfaces. If you are using a recursion guard, and some of the interfaces are already in the set, that means that there is a loop in the inheritance chain. In that case, we will omit the existing interfaces.

Parameters:
recursionGuard - set used to identify loops in the inheritance chain (so that we can break out of them)
Returns:
implemented interface definitions

getMetaTagsByName

public IMetaTag[] getMetaTagsByName(java.lang.String name)
Retrieve all of the meta attributes (e.g. [Event("")]) that match the given name in the metadata for this class or any of its base classes

Parameters:
name - name of meta attributes to search for (e.g. Event or IconFile)
Returns:
array of meta attributes matching that name (or empty array)

resolveToComponentTag

public XMLName resolveToComponentTag()
Try to resolve this class as an MXML component. The URI will be the component package path.