Class TypeDeclarations

  • Direct Known Subclasses:
    TypeDeclarationsECMAv3

    public abstract class TypeDeclarations
    extends java.lang.Object
    • Constructor Detail

      • TypeDeclarations

        public TypeDeclarations()
    • Method Detail

      • loadExtensions

        private void loadExtensions()
      • loadJavaScriptConstructors

        protected void loadJavaScriptConstructors()
      • addECMAObject

        public void addECMAObject​(java.lang.String type,
                                  boolean canBeInstantiated)
      • loadReverseLookup

        protected void loadReverseLookup()
      • loadTypes

        protected abstract void loadTypes()
      • addTypeDeclaration

        public void addTypeDeclaration​(java.lang.String name,
                                       TypeDeclaration dec)
      • getClassName

        public java.lang.String getClassName​(java.lang.String lookupType)
      • getAllClasses

        public java.util.List<java.lang.String> getAllClasses()
      • getAllJavaScriptTypeDeclarations

        public java.util.List<TypeDeclaration> getAllJavaScriptTypeDeclarations()
      • addJavaScriptLookup

        public void addJavaScriptLookup​(java.lang.String apiName,
                                        java.lang.String jsName)
        Add Javascript reverse lookup
        Parameters:
        apiName - Java API name
        jsName - Javascript name
      • removeType

        public void removeType​(java.lang.String name)
        Removes declaration type from type cache
        Parameters:
        name - name of type declaration
      • isJavaScriptType

        public boolean isJavaScriptType​(TypeDeclaration td)
        Returns whether the qualified name is a built-in JavaScript type
        Parameters:
        td -
        Returns:
      • getTypeDeclaration

        public TypeDeclaration getTypeDeclaration​(java.lang.String name)
        Parameters:
        name -
        Returns:
        Lookup type declaration from name. If the TypeDeclaration cannot be found, then lookup using reserve lookup
      • getJSType

        private TypeDeclaration getJSType​(java.lang.String lookupName)
        Lookup the JavaScript name for a given name
        Parameters:
        lookupName -
        Returns:
        check whether the name is wrapped in [] then return ArrayTypeDeclaration otherwise lookup from JavaScript Name cache
        See Also:
        ArrayTypeDeclaration
      • canECMAObjectBeInstantiated

        public boolean canECMAObjectBeInstantiated​(java.lang.String name)
        Answers the question whether an object can be instantiated (i.e. has a constructor) Note, only tests ECMA objects
        Parameters:
        name - name of class to test