public interface IHierarchy
extends java.io.Serializable
Modifier and Type | Field and Description |
---|---|
static IProgramElement |
NO_STRUCTURE |
Modifier and Type | Method and Description |
---|---|
void |
addToFileMap(java.lang.String canonicalFilePath,
IProgramElement compilationUnitProgramElement) |
IProgramElement |
findCloserMatchForLineNumber(IProgramElement node,
int lineno)
For a specified node, check if any of the children more accurately represent the specified line.
|
IProgramElement |
findElementForHandle(java.lang.String handle) |
IProgramElement |
findElementForHandleOrCreate(java.lang.String handle,
boolean create) |
IProgramElement |
findElementForLabel(IProgramElement parent,
IProgramElement.Kind kind,
java.lang.String label)
Returns the first match
|
IProgramElement |
findElementForOffSet(java.lang.String sourceFilePath,
int lineNumber,
int offSet) |
IProgramElement |
findElementForSignature(IProgramElement parent,
IProgramElement.Kind kind,
java.lang.String signature)
Returns the first match
|
IProgramElement |
findElementForSourceFile(java.lang.String sourceFile) |
IProgramElement |
findElementForSourceLine(ISourceLocation location)
TODO: discriminate columns
|
IProgramElement |
findElementForSourceLine(java.lang.String sourceFilePath,
int lineNumber)
Never returns null
|
IProgramElement |
findElementForType(java.lang.String packageName,
java.lang.String typeName) |
java.lang.Object |
findInFileMap(java.lang.Object key) |
IProgramElement |
findNodeForSourceFile(IProgramElement node,
java.lang.String sourcefilePath)
Discover the node representing a particular source file.
|
void |
flushHandleMap() |
void |
flushTypeMap() |
java.lang.String |
getConfigFile() |
IProgramElement |
getElement(java.lang.String handle) |
java.util.Set<java.util.Map.Entry<java.lang.String,IProgramElement>> |
getFileMapEntrySet() |
IProgramElement |
getRoot() |
boolean |
isValid() |
boolean |
removeFromFileMap(java.lang.String canonicalFilePath) |
void |
setConfigFile(java.lang.String configFile) |
void |
setFileMap(java.util.HashMap<java.lang.String,IProgramElement> fileMap) |
void |
setRoot(IProgramElement root) |
void |
updateHandleMap(java.util.Set<java.lang.String> deletedFiles) |
static final IProgramElement NO_STRUCTURE
IProgramElement getElement(java.lang.String handle)
IProgramElement getRoot()
void setRoot(IProgramElement root)
void addToFileMap(java.lang.String canonicalFilePath, IProgramElement compilationUnitProgramElement)
boolean removeFromFileMap(java.lang.String canonicalFilePath)
void setFileMap(java.util.HashMap<java.lang.String,IProgramElement> fileMap)
java.lang.Object findInFileMap(java.lang.Object key)
java.util.Set<java.util.Map.Entry<java.lang.String,IProgramElement>> getFileMapEntrySet()
boolean isValid()
IProgramElement findElementForHandle(java.lang.String handle)
IProgramElement findElementForHandleOrCreate(java.lang.String handle, boolean create)
IProgramElement findElementForSignature(IProgramElement parent, IProgramElement.Kind kind, java.lang.String signature)
parent
- kind
- not nullIProgramElement findElementForLabel(IProgramElement parent, IProgramElement.Kind kind, java.lang.String label)
parent
- kind
- not nullIProgramElement findElementForType(java.lang.String packageName, java.lang.String typeName)
packageName
- if null default package is searchedclassName
- can't be nullIProgramElement findElementForSourceFile(java.lang.String sourceFile)
sourceFilePath
- modified to '/' delimited path for consistencyIProgramElement findElementForSourceLine(ISourceLocation location)
IProgramElement findElementForSourceLine(java.lang.String sourceFilePath, int lineNumber)
sourceFilePath
- canonicalized path for consistencylineNumber
- if 0 or 1 the corresponding file node will be returnedIProgramElement findElementForOffSet(java.lang.String sourceFilePath, int lineNumber, int offSet)
java.lang.String getConfigFile()
void setConfigFile(java.lang.String configFile)
void flushTypeMap()
void flushHandleMap()
void updateHandleMap(java.util.Set<java.lang.String> deletedFiles)
IProgramElement findCloserMatchForLineNumber(IProgramElement node, int lineno)
node
- where to start lookinglineno
- the line numberIProgramElement findNodeForSourceFile(IProgramElement node, java.lang.String sourcefilePath)
node
- where in the model to start looking (usually the root on the initial call)sourcefilePath
- the source file being searched for