Package org.fife.rsta.ac.js.ast.jsType
Class RhinoJavaScriptTypesFactory
- java.lang.Object
-
- org.fife.rsta.ac.js.ast.jsType.JavaScriptTypesFactory
-
- org.fife.rsta.ac.js.ast.jsType.JSR223JavaScriptTypesFactory
-
- org.fife.rsta.ac.js.ast.jsType.RhinoJavaScriptTypesFactory
-
public class RhinoJavaScriptTypesFactory extends JSR223JavaScriptTypesFactory
Rhino Specific JavaScriptTypesFactory. SupportsimportPackageandimportClass.importPackage(java.util) importClass(java.util.HashSet)Clears the cache every time document is parsed for importPackage and importClass to work properly.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.LinkedHashSet<java.lang.String>importClassesprivate java.util.LinkedHashSet<java.lang.String>importPackages-
Fields inherited from class org.fife.rsta.ac.js.ast.jsType.JavaScriptTypesFactory
cachedTypes, typesFactory
-
-
Constructor Summary
Constructors Constructor Description RhinoJavaScriptTypesFactory(TypeDeclarationFactory typesFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddImportClass(java.lang.String qualifiedClass)voidaddImportPackage(java.lang.String packageName)private booleancanClearCache(java.util.HashSet<java.lang.String> newImports, java.util.LinkedHashSet<java.lang.String> oldImports)Validate whether the newImports and old imports contain the same valuesprivate voidclearAllImportTypes()voidclearImportCache()private ClassFilefindFromClasses(JarManager manager, java.lang.String name)Look for class file using imported classesprivate ClassFilefindFromImport(JarManager manager, java.lang.String name)Look for class file using imported packagesClassFilegetClassFile(JarManager manager, TypeDeclaration type)Override getClassFile that checks the imported packages and classnames based on the TypeDeclaration.getAPITypeName()voidmergeImports(java.util.HashSet<java.lang.String> packages, java.util.HashSet<java.lang.String> classes)private voidmergeImports(java.util.HashSet<java.lang.String> newImports, java.util.LinkedHashSet<java.lang.String> oldImports, boolean packages)private voidremoveAllTypes(JavaScriptType type)Remove all TypeDeclarations from the TypeDeclarationFactory from the JavaScriptType and all it's extended classesprivate java.lang.StringremovePackagesFromType(java.lang.String type)-
Methods inherited from class org.fife.rsta.ac.js.ast.jsType.JSR223JavaScriptTypesFactory
makeJavaScriptType
-
Methods inherited from class org.fife.rsta.ac.js.ast.jsType.JavaScriptTypesFactory
clearCache, createNewTypeDeclaration, createNewTypeDeclaration, getCachedType, getDefaultJavaScriptTypesFactory, getECMAObjectTypes, ignoreClass, isUseBeanProperties, populateCompletionsForType, removeCachedType, setUseBeanProperties
-
-
-
-
Constructor Detail
-
RhinoJavaScriptTypesFactory
public RhinoJavaScriptTypesFactory(TypeDeclarationFactory typesFactory)
-
-
Method Detail
-
addImportClass
public void addImportClass(java.lang.String qualifiedClass)
-
addImportPackage
public void addImportPackage(java.lang.String packageName)
-
mergeImports
public void mergeImports(java.util.HashSet<java.lang.String> packages, java.util.HashSet<java.lang.String> classes)
-
mergeImports
private void mergeImports(java.util.HashSet<java.lang.String> newImports, java.util.LinkedHashSet<java.lang.String> oldImports, boolean packages)
-
canClearCache
private boolean canClearCache(java.util.HashSet<java.lang.String> newImports, java.util.LinkedHashSet<java.lang.String> oldImports)Validate whether the newImports and old imports contain the same values- Parameters:
newImports-oldImports-- Returns:
-
clearImportCache
public void clearImportCache()
-
clearAllImportTypes
private void clearAllImportTypes()
-
removeAllTypes
private void removeAllTypes(JavaScriptType type)
Remove all TypeDeclarations from the TypeDeclarationFactory from the JavaScriptType and all it's extended classes- Parameters:
type-
-
getClassFile
public ClassFile getClassFile(JarManager manager, TypeDeclaration type)
Override getClassFile that checks the imported packages and classnames based on the TypeDeclaration.getAPITypeName()- Overrides:
getClassFilein classJavaScriptTypesFactory
-
removePackagesFromType
private java.lang.String removePackagesFromType(java.lang.String type)
-
findFromClasses
private ClassFile findFromClasses(JarManager manager, java.lang.String name)
Look for class file using imported classes- Parameters:
manager-name-- Returns:
-
findFromImport
private ClassFile findFromImport(JarManager manager, java.lang.String name)
Look for class file using imported packages- Parameters:
manager-name-- Returns:
-
-