Class BinaryMember
- All Implemented Interfaces:
IJavaElement
,IMember
,IParent
,ISourceManipulation
,ISourceReference
,org.eclipse.core.runtime.IAdaptable
- Direct Known Subclasses:
BinaryMethod
,BinaryModule
,BinaryType
,ResolvedBinaryField
-
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.SourceRefElement
occurrenceCount
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, parent
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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
copy(IJavaElement container, IJavaElement sibling, String rename, boolean force, org.eclipse.core.runtime.IProgressMonitor monitor)
Copies this element to the given container.protected IAnnotation[]
getAnnotations(IBinaryAnnotation[] binaryAnnotations, long tagBits)
String[]
Returns the categories defined by this member's Javadoc.getKey()
abstract String
getKey(boolean forceOpen)
Returns the name range associated with this element.Returns the source range associated with this element.protected IAnnotation[]
getStandardAnnotations(long tagBits)
boolean
isBinary()
Returns whether this member is from a class file.boolean
Returns whether the structure of this element is known.void
move(IJavaElement container, IJavaElement sibling, String rename, boolean force, org.eclipse.core.runtime.IProgressMonitor monitor)
Moves this element to the given container.void
Renames this element to the given name.void
setContents(String contents, org.eclipse.core.runtime.IProgressMonitor monitor)
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, getFlags, getHandleFromMemento, getHandleMementoDelimiter, getJavadocRange, getOuterMostLocalContext, getType, getTypeRoot, isMainMethod, isReadOnly, readableName
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.SourceRefElement
closing, createElementInfo, delete, equals, findNode, generateInfos, getAnnotation, getAnnotations, getCompilationUnit, getCorrespondingResource, getHandleMemento, getHandleUpdatingCountFromMemento, getOccurrenceCount, getOpenableParent, getPath, getSource, getUnderlyingResource, hasChildren, resource, toStringName
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.JavaElement
appendEscapedDelimiter, close, escapeMementoName, exists, getAncestor, getAttachedJavadoc, getChildren, 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, 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.eclipse.core.runtime.IAdaptable
getAdapter
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IJavaElement
exists, getAncestor, getAttachedJavadoc, getCorrespondingResource, getElementType, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IMember
getCompilationUnit, getOccurrenceCount
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IParent
getChildren, hasChildren
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.ISourceManipulation
delete
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.ISourceReference
exists, getSource
-
Constructor Details
-
BinaryMember
-
-
Method Details
-
copy
public void copy(IJavaElement container, IJavaElement sibling, String rename, boolean force, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelExceptionDescription copied from interface:ISourceManipulation
Copies this element to the given container.- Specified by:
copy
in interfaceISourceManipulation
- Overrides:
copy
in classSourceRefElement
- Parameters:
container
- the containersibling
- the sibling element before which the copy should be inserted, ornull
if the copy should be inserted as the last child of the containerrename
- the new name for the element, ornull
if the copy retains the name of this elementforce
-true
if any existing child in the container with the target name should be replaced, andfalse
to throw an exception in the event of a name collisionmonitor
- a progress monitor- Throws:
JavaModelException
- if this element could not be copied. Reasons include:- This Java element, container element, or sibling does not exist (ELEMENT_DOES_NOT_EXIST)
- A
CoreException
occurred while updating an underlying resource - The container is of an incompatible type (INVALID_DESTINATION)
- The sibling is not a child of the given container (INVALID_SIBLING)
- The new name is invalid (INVALID_NAME)
- A child in the container already exists with the same name (NAME_COLLISION)
and
replace
has been specified asfalse
- The container or this element is read-only (READ_ONLY)
- See Also:
ISourceManipulation
-
getAnnotations
-
getStandardAnnotations
-
getCategories
Description copied from interface:IMember
Returns the categories defined by this member's Javadoc. A category is the identifier following the tag@category
in the member's Javadoc. Returns an empty array if no category is defined in this member's Javadoc.- Specified by:
getCategories
in interfaceIMember
- Overrides:
getCategories
in classMember
- Returns:
- the categories defined by this member's doc
- Throws:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource.
-
getKey
-
getKey
- Throws:
JavaModelException
- See Also:
Binding.computeUniqueKey()
-
getNameRange
Description copied from interface:ISourceReference
Returns the name range associated with this element.If the element is an
IMember
, it returns the source range of this member's simple name, ornull
if this member does not have a name (for example, an initializer), or if this member does not have associated source code (for example, a binary type).If this element is an
IImportDeclaration
, the source range of this import declaration's name, ornull
if this import declaration does not have associated source code (for example, a binary type).
The source range for the name includes the trailing '*' if the call toIImportDeclaration.isOnDemand()
returns true.If this element is an
IPackageDeclaration
, the source range of this package declaration's name, ornull
if this package declaration does not have associated source code (for example, a binary type).If this element is an
IAnnotation
, the source range of this annotation's name, ornull
if this annotation does not have associated source code (for example, in a binary type).If this element is an
ITypeParameter
, the source range of this type parameter's name, ornull
if this type parameter does not have associated source code (for example, in a binary type).If this element is an
ITypeRoot
orIImportContainer
, it returns null.- Specified by:
getNameRange
in interfaceISourceReference
- Overrides:
getNameRange
in classMember
- Returns:
- the name range associated with this element, or
null
if not available - Throws:
JavaModelException
- See Also:
IMember
-
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 classSourceRefElement
- 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:
ISourceReference
-
isBinary
public boolean isBinary()Description copied from interface:IMember
Returns whether this member is from a class file. This is a handle-only method. -
isStructureKnown
Description copied from interface:IJavaElement
Returns whether the structure of this element is known. For example, for a compilation unit that has syntax errors,false
is returned. If the structure of an element is unknown, navigations will return reasonable defaults. For example,getChildren
for a compilation unit with syntax errors will return a collection of the children that could be parsed.Note: This does not imply anything about consistency with the underlying resource/buffer contents.
- Specified by:
isStructureKnown
in interfaceIJavaElement
- Overrides:
isStructureKnown
in classSourceRefElement
- Returns:
true
if the structure of this element is known- Throws:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource- See Also:
IJavaElement
-
move
public void move(IJavaElement container, IJavaElement sibling, String rename, boolean force, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelExceptionDescription copied from interface:ISourceManipulation
Moves this element to the given container.- Specified by:
move
in interfaceISourceManipulation
- Overrides:
move
in classSourceRefElement
- Parameters:
container
- the containersibling
- the sibling element before which the element should be inserted, ornull
if the element should be inserted as the last child of the containerrename
- the new name for the element, ornull
if the element retains its nameforce
-true
if any existing child in the container with the target name should be replaced, andfalse
to throw an exception in the event of a name collisionmonitor
- a progress monitor- Throws:
JavaModelException
- if this element could not be moved. Reasons include:- This Java element, container element, or sibling does not exist (ELEMENT_DOES_NOT_EXIST)
- A
CoreException
occurred while updating an underlying resource - The container is of an incompatible type (INVALID_DESTINATION)
- The sibling is not a child of the given container (INVALID_SIBLING)
- The new name is invalid (INVALID_NAME)
- A child in the container already exists with the same name (NAME_COLLISION)
and
replace
has been specified asfalse
- The container or this element is read-only (READ_ONLY)
- See Also:
ISourceManipulation
-
rename
public void rename(String newName, boolean force, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelExceptionDescription copied from interface:ISourceManipulation
Renames this element to the given name.- Specified by:
rename
in interfaceISourceManipulation
- Overrides:
rename
in classSourceRefElement
- Parameters:
newName
- the new name for the elementforce
-true
if any existing element with the target name should be replaced, andfalse
to throw an exception in the event of a name collisionmonitor
- a progress monitor- Throws:
JavaModelException
- if this element could not be renamed. Reasons include:- This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
- A
CoreException
occurred while updating an underlying resource - The new name is invalid (INVALID_NAME)
- A child in the container already exists with the same name (NAME_COLLISION)
and
replace
has been specified asfalse
- This element is read-only (READ_ONLY)
- See Also:
ISourceManipulation
-
setContents
public void setContents(String contents, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException- Throws:
JavaModelException
-