Class BinaryModule
- All Implemented Interfaces:
IAnnotatable
,IJavaElement
,IMember
,IModuleDescription
,IParent
,ISourceManipulation
,ISourceReference
,AbstractModule
,org.eclipse.core.runtime.IAdaptable
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.aspectj.org.eclipse.jdt.internal.core.AbstractModule
AbstractModule.AutoModule
-
Field Summary
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.core.NamedMember
name
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.core.JavaElement
JEM_ANNOTATION, JEM_CLASSFILE, JEM_COMPILATIONUNIT, JEM_COUNT, JEM_DELIMITER_ESCAPE, JEM_ESCAPE, JEM_FIELD, JEM_IMPORTDECLARATION, JEM_INITIALIZER, JEM_JAVAPROJECT, JEM_LAMBDA_EXPRESSION, JEM_LAMBDA_METHOD, JEM_LOCALVARIABLE, JEM_METHOD, JEM_MODULAR_CLASSFILE, JEM_MODULE, JEM_PACKAGEDECLARATION, JEM_PACKAGEFRAGMENT, JEM_PACKAGEFRAGMENTROOT, JEM_STRING, JEM_TYPE, JEM_TYPE_PARAMETER, NO_ELEMENTS, NO_INFO, NO_STRINGS
Fields inherited from interface org.aspectj.org.eclipse.jdt.core.IJavaElement
ANNOTATION, CLASS_FILE, COMPILATION_UNIT, FIELD, IMPORT_CONTAINER, IMPORT_DECLARATION, INITIALIZER, JAVA_MODEL, JAVA_MODULE, JAVA_PROJECT, LOCAL_VARIABLE, METHOD, PACKAGE_DECLARATION, PACKAGE_FRAGMENT, PACKAGE_FRAGMENT_ROOT, TYPE, TYPE_PARAMETER
-
Constructor Summary
ConstructorDescriptionBinaryModule
(JavaElement parent, String name) For creating a pure handle from its memento.BinaryModule
(JavaElement parent, IBinaryModule info) For creating a populated handle from a class file. -
Method Summary
Modifier and TypeMethodDescriptionReturns the annotations for this element.getAttachedJavadoc
(org.eclipse.core.runtime.IProgressMonitor monitor) Returns the Javadoc as HTML source if this element has attached Javadoc,null
otherwise.Returns the immediate children of this element.int
getFlags()
Returns the modifier flags for this member.char
Returns thechar
that marks the start of this handles contribution to a memento.getJavadocContents
(org.eclipse.core.runtime.IProgressMonitor monitor) getKey
(boolean forceOpen) Returns the source range associated with this element.boolean
isBinary()
Returns whether this member is from a class file.boolean
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.BinaryMember
copy, getAnnotations, getCategories, getKey, getNameRange, getStandardAnnotations, isStructureKnown, move, rename, setContents
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.NamedMember
getElementName, getFullyQualifiedName, getFullyQualifiedParameterizedName, getKey, getKey, getKey, getKey, getOccurrenceCountSignature, getPackageFragment, getTypeParameters, getTypeQualifiedName, resolveType, resolveType
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.Member
areSimilarMethods, convertConstant, findMethods, getClassFile, getDeclaringType, getHandleFromMemento, getJavadocRange, getOuterMostLocalContext, getType, getTypeRoot, isMainMethod, isMainMethodCandidate, isReadOnly, readableName
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.SourceRefElement
calculateHashCode, closing, createElementInfo, delete, equals, findNode, generateInfos, getAnnotation, getCompilationUnit, getCorrespondingResource, getHandleMemento, getHandleUpdatingCountFromMemento, getOccurrenceCount, getOpenableParent, getPath, getSource, getUnderlyingResource, hasChildren, incOccurrenceCount, resource, setOccurrenceCount, toStringName
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.JavaElement
appendEscapedDelimiter, close, escapeMementoName, exists, getAncestor, getChildrenOfType, getElementInfo, getElementInfo, getHandleFromMemento, getHandleIdentifier, getHandleMemento, getJavadocBaseLocation, getJavaModel, getJavaProject, getLibraryJavadocLocation, getOpenable, getParent, getPrimaryElement, getPrimaryElement, getResource, getSchedulingRule, getSourceElementAt, getSourceMapper, getURLContents, hashCode, isAncestorOf, newDoesNotExistStatus, newJavaModelException, newNotPresentException, openWhenClosed, resetHashCode, resolved, tabString, toDebugString, toString, toString, toStringAncestors, toStringChildren, toStringInfo, toStringInfo, toStringWithAncestors, toStringWithAncestors, unresolved, validateAndCache
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.aspectj.org.eclipse.jdt.internal.core.AbstractModule
getElementInfo, getElementType, getExportedPackageNames, getExportedPackages, getOpenedPackageNames, getOpenedPackages, getProvidedServiceNames, getProvidedServices, getRequiredModuleNames, getRequiredModules, getUsedServiceNames, getUsedServices, toStringContent
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IAnnotatable
getAnnotation
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IJavaElement
exists, getAncestor, getCorrespondingResource, getElementName, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource, isReadOnly, isStructureKnown
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IMember
getCategories, getClassFile, getCompilationUnit, getDeclaringType, getJavadocRange, getOccurrenceCount, getType, getTypeRoot
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IModuleDescription
isAutoModule
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IParent
hasChildren
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.ISourceManipulation
copy, delete, move, rename
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.ISourceReference
exists, getNameRange, getSource
-
Constructor Details
-
BinaryModule
For creating a pure handle from its memento. -
BinaryModule
For creating a populated handle from a class file.
-
-
Method Details
-
getModuleInfo
- Specified by:
getModuleInfo
in interfaceAbstractModule
- Throws:
JavaModelException
-
getAnnotations
Description copied from interface:IAnnotatable
Returns the annotations for this element. Returns an empty array if this element has no annotations.- Specified by:
getAnnotations
in interfaceIAnnotatable
- Overrides:
getAnnotations
in classSourceRefElement
- Returns:
- the annotations of this element, in the order declared in the source, or an empty array if none
- Throws:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource.
-
getChildren
Description copied from interface:IParent
Returns the immediate children of this element. Unless otherwise specified by the implementing element, the children are in no particular order.- Specified by:
getChildren
in interfaceIParent
- Overrides:
getChildren
in classJavaElement
- Returns:
- the immediate children of this element
- Throws:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource- See Also:
-
isBinary
public boolean isBinary()Description copied from interface:IMember
Returns whether this member is from a class file. This is a handle-only method.- Specified by:
isBinary
in interfaceIMember
- Overrides:
isBinary
in classBinaryMember
- Returns:
true
if from a class file, andfalse
if from a compilation unit- See Also:
-
isSystemModule
public boolean isSystemModule()- Specified by:
isSystemModule
in interfaceIModuleDescription
- Returns:
- true if this module is a system module, else false
-
getFlags
Description copied from interface:IMember
Returns the modifier flags for this member. The flags can be examined using classFlags
.For binary members, flags from the class file as well as derived flags
Flags.AccAnnotationDefault
andFlags.AccDefaultMethod
are included.For source members, only flags as indicated in the source are returned. Thus if an interface defines a method
void myMethod();
, the flags don't include the 'public' flag. Source flags includeFlags.AccAnnotationDefault
as well.- Specified by:
getFlags
in interfaceIMember
- Overrides:
getFlags
in classMember
- Returns:
- the modifier flags for this member
- Throws:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource.- See Also:
-
getHandleMementoDelimiter
public char getHandleMementoDelimiter()Description copied from class:JavaElement
Returns thechar
that marks the start of this handles contribution to a memento.- Overrides:
getHandleMementoDelimiter
in classMember
- See Also:
-
getKey
- Specified by:
getKey
in classBinaryMember
- Throws:
JavaModelException
- See Also:
-
getSourceRange
Description copied from interface:ISourceReference
Returns the source range associated with this element.For class files, this returns the range of the entire compilation unit associated with the class file (if there is one).
If this element has no associated source code, either
null
is returned, or a source range with a -1 offset and a 0 length.SourceRange.isAvailable(ISourceRange)
can be used to detect that case.- Specified by:
getSourceRange
in interfaceISourceReference
- Overrides:
getSourceRange
in classBinaryMember
- Returns:
- the source range, or either
null
or [-1, 0] if this element has no associated source code - Throws:
JavaModelException
- if an exception occurs while accessing its corresponding resource- See Also:
-
getAttachedJavadoc
public String getAttachedJavadoc(org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException Description copied from interface:IJavaElement
Returns the Javadoc as HTML source if this element has attached Javadoc,
null
otherwise.This should be used only for binary elements. Source elements will always return
null
.The encoding used to read the Javadoc is the one defined by the content type of the file. If none is defined, then the project's encoding of this Java element is used. If the project's encoding cannot be retrieved, then the platform encoding is used.
In case the Javadoc doesn't exist for this element,
null
is returned.The HTML is extracted from the attached Javadoc and provided as is. No transformation or validation is done.
- Specified by:
getAttachedJavadoc
in interfaceIJavaElement
- Overrides:
getAttachedJavadoc
in classJavaElement
- Parameters:
monitor
- the given progress monitor, can benull
- Returns:
- the extracted javadoc from the attached javadoc,
null
if none - Throws:
JavaModelException
- if:- this element does not exist
- retrieving the attached javadoc fails (timed-out, invalid URL, ...)
- the format of the javadoc doesn't match expected standards (different anchors,...)
- See Also:
-
getJavadocContents
public JavadocContents getJavadocContents(org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException - Throws:
JavaModelException
-
toString
- Specified by:
toString
in interfaceAbstractModule
-