Klasse ModularClassFile
- Alle implementierten Schnittstellen:
IBufferChangedListener
,IClassFile
,ICodeAssist
,IJavaElement
,IModularClassFile
,IOpenable
,IParent
,ISourceReference
,ITypeRoot
,SuffixConstants
,org.eclipse.core.runtime.IAdaptable
-
Feldübersicht
Von Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.core.AbstractClassFile
name
Von Klasse geerbte Felder 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
Von Schnittstelle geerbte Felder 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
Von Schnittstelle geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.util.SuffixConstants
EXTENSION_aj, EXTENSION_AJ, EXTENSION_class, EXTENSION_CLASS, EXTENSION_java, EXTENSION_JAVA, EXTENSION_jmod, EXTENSION_JMOD, SUFFIX_aj, SUFFIX_AJ, SUFFIX_class, SUFFIX_CLASS, SUFFIX_java, SUFFIX_JAVA, SUFFIX_STRING_aj, SUFFIX_STRING_AJ, SUFFIX_STRING_class, SUFFIX_STRING_CLASS, SUFFIX_STRING_java, SUFFIX_STRING_JAVA
-
Konstruktorübersicht
-
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected boolean
buildStructure
(OpenableElementInfo info, org.eclipse.core.runtime.IProgressMonitor pm, Map newElements, org.eclipse.core.resources.IResource underlyingResource) Creates the single child element for this class file adding the resulting new handle (of typeIBinaryModule
) and info object to the newElements table.void
codeComplete
(int offset, CompletionRequestor requestor, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) Performs code completion at the given offset position in this compilation unit, reporting results to the given completion requestor.codeSelect
(int offset, int length, WorkingCopyOwner owner) Returns the Java elements corresponding to the given selected text in this compilation unit.protected void
escapeMementoName
(StringBuilder buffer, String mementoName) boolean
exists()
Returns whether this Java element exists in the model.Finds the primary type of this Java type root (that is, the type with the same name as the compilation unit, or the type of a class file), ornull
if no such a type exists.Returns theIBinaryModule
specific for this IClassFile, based on its underlying resource, ornull
if unable to create the diet class file.getElementAt
(int position) Returns the smallest element within this Java type root that includes the given source position (that is, a method, field, etc.), ornull
if there is no element other than the Java type root itself at the given position, or if the given position is not within the source range of the source of this Java type root.getHandleFromMemento
(String token, MementoTokenizer memento, WorkingCopyOwner owner) protected char
Returns thechar
that marks the start of this handles contribution to a memento.Returns the module description contained in this type root.getType()
Veraltet.getWorkingCopy
(WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) Returns a shared working copy on this compilation unit or class file using the given working copy owner to create the buffer.boolean
isClass()
Returns whether this type represents a class.boolean
Returns whether this type represents an interface.protected IBuffer
openBuffer
(org.eclipse.core.runtime.IProgressMonitor pm, Object info) Opens and returns buffer on the source code associated with this class file.Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.core.AbstractClassFile
becomeWorkingCopy, codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeSelect, createElementInfo, equals, findElement, getBuffer, getBytes, getClassFileContent, getCorrespondingResource, getElementAtConsideringSibling, getElementName, getElementType, getNameRange, getPath, getPathIdentifier, getSource, getSourceRange, getTypeRoot, getWorkingCopy, hasBuffer, hashCode, isReadOnly, resource, validateExistence
Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.core.Openable
bufferChanged, canBeRemovedFromCache, canBufferBeRemovedFromCache, closeBuffer, closing, codeComplete, codeSelect, findRecommendedLineSeparator, generateInfos, getBufferFactory, getBufferManager, getOpenable, getPackageFragmentRoot, getResource, getUnderlyingResource, hasUnsavedChanges, ignoreErrorStatus, isConsistent, isOpen, isSourceElement, isStructureKnown, makeConsistent, open, openAncestors, resource, resourceExists, save
Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.core.JavaElement
appendEscapedDelimiter, close, findNode, getAncestor, getAttachedJavadoc, getChildren, getChildrenOfType, getClassFile, getCompilationUnit, getElementInfo, getElementInfo, getHandleFromMemento, getHandleIdentifier, getHandleMemento, getHandleMemento, getJavadocBaseLocation, getJavaModel, getJavaProject, getLibraryJavadocLocation, getOpenableParent, getParent, getPrimaryElement, getPrimaryElement, getSchedulingRule, getSourceElementAt, getSourceMapper, getURLContents, hasChildren, isAncestorOf, newDoesNotExistStatus, newJavaModelException, newNotPresentException, openWhenClosed, readableName, resolved, setParent, tabString, toDebugString, toString, toString, toStringAncestors, toStringChildren, toStringInfo, toStringInfo, toStringName, toStringWithAncestors, toStringWithAncestors, unresolved, validateAndCache
Von Klasse geerbte Methoden org.eclipse.core.runtime.PlatformObject
getAdapter
Von Klasse geerbte Methoden java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden org.eclipse.core.runtime.IAdaptable
getAdapter
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.IClassFile
becomeWorkingCopy, getBytes, getWorkingCopy
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.ICodeAssist
codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeSelect
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.IJavaElement
getAncestor, getAttachedJavadoc, getCorrespondingResource, getElementName, getElementType, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource, isReadOnly, isStructureKnown
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.IOpenable
close, findRecommendedLineSeparator, getBuffer, hasUnsavedChanges, isConsistent, isOpen, makeConsistent, open, save
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.IParent
getChildren, hasChildren
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.core.ISourceReference
getNameRange, getSource, getSourceRange
-
Konstruktordetails
-
ModularClassFile
-
-
Methodendetails
-
buildStructure
protected boolean buildStructure(OpenableElementInfo info, org.eclipse.core.runtime.IProgressMonitor pm, Map newElements, org.eclipse.core.resources.IResource underlyingResource) throws JavaModelException Creates the single child element for this class file adding the resulting new handle (of typeIBinaryModule
) and info object to the newElements table. Returns true if successful, or false if an error is encountered parsing the class file.- Angegeben von:
buildStructure
in KlasseOpenable
- Löst aus:
JavaModelException
- Siehe auch:
-
codeComplete
public void codeComplete(int offset, CompletionRequestor requestor, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException Beschreibung aus Schnittstelle kopiert:ICodeAssist
Performs code completion at the given offset position in this compilation unit, reporting results to the given completion requestor. Theoffset
is the 0-based index of the character, after which code assist is desired. Anoffset
of -1 indicates to code assist at the beginning of this compilation unit. It considers types in the working copies with the given owner first. In other words, the owner's working copies will take precedence over their original compilation units in the workspace.Note that if a working copy is empty, it will be as if the original compilation unit had been deleted.
If
IProgressMonitor
is notnull
then some proposals which can be very long to compute are proposed. To avoid that the code assist operation take too much time aIProgressMonitor
which automatically cancel the code assist operation when a specified amount of time is reached could be used.new IProgressMonitor() { private final static int TIMEOUT = 500; //ms private long endTime; public void beginTask(String name, int totalWork) { fEndTime= System.currentTimeMillis() + TIMEOUT; } public boolean isCanceled() { return endTime Ungültige Eingabe: "<"= System.currentTimeMillis(); } ... };
- Angegeben von:
codeComplete
in SchnittstelleICodeAssist
- Angegeben von:
codeComplete
in KlasseAbstractClassFile
- Parameter:
offset
- the given offset positionrequestor
- the given completion requestorowner
- the owner of working copies that take precedence over their original compilation unitsmonitor
- the progress monitor used to report progress- Löst aus:
JavaModelException
- if code assist could not be performed. Reasons include:- This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
- The position specified is Ungültige Eingabe: "<" -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
-
codeSelect
public IJavaElement[] codeSelect(int offset, int length, WorkingCopyOwner owner) throws JavaModelException Beschreibung aus Schnittstelle kopiert:ICodeAssist
Returns the Java elements corresponding to the given selected text in this compilation unit. Theoffset
is the 0-based index of the first selected character. Thelength
is the number of selected characters. It considers types in the working copies with the given owner first. In other words, the owner's working copies will take precedence over their original compilation units in the workspace.Note that if the
length
is 0 and theoffset
is inside an identifier or the index just after an identifier then this identifier is considered as the selection.Note that if a working copy is empty, it will be as if the original compilation unit had been deleted.
- Angegeben von:
codeSelect
in SchnittstelleICodeAssist
- Angegeben von:
codeSelect
in KlasseAbstractClassFile
- Parameter:
offset
- the given offset positionlength
- the number of selected charactersowner
- the owner of working copies that take precedence over their original compilation units- Gibt zurück:
- the Java elements corresponding to the given selected text
- Löst aus:
JavaModelException
- if code resolve could not be performed. Reasons include:- This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
- The range specified is not within this element's source range (INDEX_OUT_OF_BOUNDS)
-
findPrimaryType
Beschreibung aus Schnittstelle kopiert:ITypeRoot
Finds the primary type of this Java type root (that is, the type with the same name as the compilation unit, or the type of a class file), ornull
if no such a type exists.- Angegeben von:
findPrimaryType
in SchnittstelleITypeRoot
- Gibt zurück:
- the found primary type of this Java type root, or
null
if no such a type exists
-
isClass
Beschreibung aus Schnittstelle kopiert:IClassFile
Returns whether this type represents a class. This is not guaranteed to be instantaneous, as it may require parsing the underlying file.- Angegeben von:
isClass
in SchnittstelleIClassFile
- Gibt zurück:
true
if the class file represents a class.- Löst aus:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource
-
isInterface
Beschreibung aus Schnittstelle kopiert:IClassFile
Returns whether this type represents an interface. This is not guaranteed to be instantaneous, as it may require parsing the underlying file.- Angegeben von:
isInterface
in SchnittstelleIClassFile
- Gibt zurück:
true
if the class file represents an interface.- Löst aus:
JavaModelException
- if this element does not exist or if an exception occurs while accessing its corresponding resource
-
getType
Veraltet.should only be used asIOrdinaryClassFile.getType()
.Beschreibung aus Schnittstelle kopiert:IClassFile
Returns the type contained in this class file. This is a handle-only method. The type may or may not exist.- Angegeben von:
getType
in SchnittstelleIClassFile
- Gibt zurück:
- never returns.
- Löst aus:
UnsupportedOperationException
- always.- Siehe auch:
-
getBinaryModuleInfo
Returns theIBinaryModule
specific for this IClassFile, based on its underlying resource, ornull
if unable to create the diet class file. There are two cases to consider:- a class file corresponding to an IFile resource
- a class file corresponding to a zip entry in a JAR
- Löst aus:
JavaModelException
- when the IFile resource or JAR is not available or when this class file is not present in the JAR
-
getElementAt
Beschreibung aus Schnittstelle kopiert:ITypeRoot
Returns the smallest element within this Java type root that includes the given source position (that is, a method, field, etc.), ornull
if there is no element other than the Java type root itself at the given position, or if the given position is not within the source range of the source of this Java type root.- Angegeben von:
getElementAt
in SchnittstelleITypeRoot
- Parameter:
position
- a source position inside the Java type root- Gibt zurück:
- the innermost Java element enclosing a given source position or
null
if none (excluding the Java type root). - Löst aus:
JavaModelException
- if the Java type root does not exist or if an exception occurs while accessing its corresponding resource- Siehe auch:
-
getHandleFromMemento
public IJavaElement getHandleFromMemento(String token, MementoTokenizer memento, WorkingCopyOwner owner) - Angegeben von:
getHandleFromMemento
in KlasseJavaElement
-
getHandleMementoDelimiter
protected char getHandleMementoDelimiter()Beschreibung aus Klasse kopiert:JavaElement
Returns thechar
that marks the start of this handles contribution to a memento.- Angegeben von:
getHandleMementoDelimiter
in KlasseJavaElement
- Siehe auch:
-
escapeMementoName
- Setzt außer Kraft:
escapeMementoName
in KlasseJavaElement
-
getWorkingCopy
public ICompilationUnit getWorkingCopy(WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException Beschreibung aus Schnittstelle kopiert:ITypeRoot
Returns a shared working copy on this compilation unit or class file using the given working copy owner to create the buffer. If this is already a working copy of the given owner, the element itself is returned. This API can only answer an already existing working copy if it is based on the same original Java type root AND was using the same working copy owner (that is, as defined byObject.equals(java.lang.Object)
).The life time of a shared working copy is as follows:
- The first call to
ITypeRoot.getWorkingCopy(WorkingCopyOwner, IProgressMonitor)
creates a new working copy for this element - Subsequent calls increment an internal counter.
- A call to
ICompilationUnit.discardWorkingCopy()
decrements the internal counter. - When this counter is 0, the working copy is discarded.
Note that the working copy owner will be used for the life time of the shared working copy, that is if the working copy is closed then reopened, this owner will be used. The buffer will be automatically initialized with the original's Java type root content upon creation.
When the shared working copy instance is created, an ADDED IJavaElementDelta is reported on this working copy.
A working copy can be created on a not-yet existing compilation unit. In particular, such a working copy can then be committed in order to create the corresponding compilation unit.
Note that possible problems of this working copy are reported using this method only if the given working copy owner returns a problem requestor for this working copy (see
WorkingCopyOwner.getProblemRequestor(ICompilationUnit)
).- Angegeben von:
getWorkingCopy
in SchnittstelleITypeRoot
- Parameter:
owner
- the working copy owner that creates a buffer that is used to get the content of the working copymonitor
- a progress monitor used to report progress while opening this compilation unit ornull
if no progress should be reported- Gibt zurück:
- a new working copy of this Java type root using the given owner to create the buffer, or this Java type root if it is already a working copy
- Löst aus:
JavaModelException
- if the contents of this element can not be determined.
- The first call to
-
openBuffer
protected IBuffer openBuffer(org.eclipse.core.runtime.IProgressMonitor pm, Object info) throws JavaModelException Opens and returns buffer on the source code associated with this class file. Maps the source code to the children elements of this class file. If no source code is associated with this class file,null
is returned.- Setzt außer Kraft:
openBuffer
in KlasseOpenable
- Löst aus:
JavaModelException
- Siehe auch:
-
getModule
Beschreibung aus Schnittstelle kopiert:IModularClassFile
Returns the module description contained in this type root. An error-freeIModularClassFile
should always have a module.- Angegeben von:
getModule
in SchnittstelleIModularClassFile
- Angegeben von:
getModule
in SchnittstelleITypeRoot
- Gibt zurück:
- the module description contained in the type root.
- Löst aus:
JavaModelException
-
exists
public boolean exists()Beschreibung aus Schnittstelle kopiert:IJavaElement
Returns whether this Java element exists in the model.Java elements are handle objects that may or may not be backed by an actual element. Java elements that are backed by an actual element are said to "exist", and this method returns
true
. For Java elements that are not working copies, it is always the case that if the element exists, then its parent also exists (provided it has one) and includes the element as one of its children. It is therefore possible to navigated to any existing Java element from the root of the Java model along a chain of existing Java elements. On the other hand, working copies are said to exist until they are destroyed (withIWorkingCopy.destroy
). Unlike regular Java elements, a working copy never shows up among the children of its parent element (which may or may not exist).- Angegeben von:
exists
in SchnittstelleIJavaElement
- Angegeben von:
exists
in SchnittstelleISourceReference
- Setzt außer Kraft:
exists
in KlasseOpenable
- Gibt zurück:
true
if this element exists in the Java model, andfalse
if this element does not exist- Siehe auch:
-
IOrdinaryClassFile.getType()
.