/**
* Manages the identifer index information for a specific project
- *
+ *
*/
public class IdentifierIndexManager {
public class LineCreator implements ITerminalSymbols {
/**
* Add the information of the current identifier to the line
- *
+ *
* @param typeOfIdentifier
* the type of the identifier ('c'lass, 'd'efine, 'f'unction, 'm'ethod(class), 'v'ariable(class) 'g'lobal variable)
* @param identifier
/**
* Add the information of the current identifier to the line
- *
+ *
* @param typeOfIdentifier
* the type of the identifier ('c'lass, 'd'efine, 'f'unction, 'm'ethod(class), 'v'ariable(class) 'g'lobal variable)
* @param identifier
/**
* Check if 2 char arrays are equal
- *
+ *
* @param a
* @param b
* @return
/**
* Add the information for a given IFile resource
- *
+ *
*/
public void addFile(IFile fileToParse) {
// InputStream iStream;
/**
* Adds a line of the index file for function, class, class-method and class-variable names
- *
+ *
* @param line
*/
private void addLine(String line) {
/**
* Adds a line of the index file for function, class, class-method and class-variable names
- *
+ *
* @param line
*/
public void addLine(TreeMap treeMap, HashMap fileMap, String line, List allClassNames) {
/**
* Change the information for a given IFile resource
- *
+ *
*/
public void changeFile(IFile fileToParse) {
removeFile(fileToParse);
/**
* Get a list of all PHPIdentifierLocation object's associated with an identifier
- *
+ *
* @param identifier
* @return
*/
public List getLocations(String identifier) {
- return (List) fIndentifierMap.get(identifier);
+ List list=(List) fIndentifierMap.get(identifier);
+ if (list!=null) {
+ return list;
+ }
+ return new ArrayList();
}
/**
* Initialize (i.e. clear) the current index information
- *
+ *
*/
public void initialize() {
fIndentifierMap = new TreeMap(new StringComparator());
/**
* Remove the information for a given IFile resource
- *
+ *
*/
public void removeFile(IFile fileToParse) {
// String line = (String)
/**
* Removes a line of the index file for function, class, class-method and class-variable names
- *
+ *
* @param line
*/
private void removeLine(String line) {
/**
* Save the current index information in the projects index file
- *
+ *
*/
public void writeFile() {
FileWriter fileWriter;