Class JavaScriptFunctionType


  • public class JavaScriptFunctionType
    extends java.lang.Object
    • Field Detail

      • CONVERSION_NONE

        public static int CONVERSION_NONE
      • CONVERSION_JS

        public static int CONVERSION_JS
      • BooleanClass

        public static java.lang.Class<?> BooleanClass
      • ByteClass

        public static java.lang.Class<?> ByteClass
      • CharacterClass

        public static java.lang.Class<?> CharacterClass
      • ClassClass

        public static java.lang.Class<?> ClassClass
      • DoubleClass

        public static java.lang.Class<?> DoubleClass
      • FloatClass

        public static java.lang.Class<?> FloatClass
      • IntegerClass

        public static java.lang.Class<?> IntegerClass
      • LongClass

        public static java.lang.Class<?> LongClass
      • NumberClass

        public static java.lang.Class<?> NumberClass
      • ObjectClass

        public static java.lang.Class<?> ObjectClass
      • ShortClass

        public static java.lang.Class<?> ShortClass
      • StringClass

        public static java.lang.Class<?> StringClass
      • DateClass

        public static java.lang.Class<?> DateClass
      • JSBooleanClass

        public static java.lang.Class<?> JSBooleanClass
      • JSStringClass

        public static java.lang.Class<?> JSStringClass
      • JSNumberClass

        public static java.lang.Class<?> JSNumberClass
      • JSObjectClass

        public static java.lang.Class<?> JSObjectClass
      • JSDateClass

        public static java.lang.Class<?> JSDateClass
      • JSArray

        public static java.lang.Class<?> JSArray
      • name

        private java.lang.String name
    • Method Detail

      • getName

        public java.lang.String getName()
      • getArgumentCount

        public int getArgumentCount()
      • compare

        public int compare​(JavaScriptFunctionType compareType,
                           SourceCompletionProvider provider,
                           boolean isJavaScriptType)
        Compare this JavaScriptFunctionType with another and return a weight integer based on the parameters matching or whether the parameters are compatible.
        Parameters:
        compareType - method to compare with this
        provider - SourceCompletionProvider
        Returns:
        weight based on the compatibleness of method to compare
      • compareParameters

        private int compareParameters​(TypeDeclaration param,
                                      TypeDeclaration compareParam,
                                      SourceCompletionProvider provider)
        Converts TypeDeclaration into Java Class and compares whether another parameter is compatible based on JSR-223
        Parameters:
        param - parameter to compare
        compareParam - compare parameter
        provider - SourceCompletionProvider
        Returns:
      • convertClassToJavaClass

        private java.lang.Class<?> convertClassToJavaClass​(java.lang.String name,
                                                           TypeDeclarationFactory typesFactory)
                                                    throws java.lang.ClassNotFoundException
        Converts TypeDeclaration qualified name to Java Class
        Parameters:
        name -
        Returns:
        Throws:
        java.lang.ClassNotFoundException
      • parseFunction

        public static JavaScriptFunctionType parseFunction​(java.lang.String function,
                                                           SourceCompletionProvider provider)
        Convenience method to parse function string and converts to JavaScriptFunctionType
        Parameters:
        function - String to parse e.g. convertValue(java.util.String val);
        provider - used for type conversions
        Returns:
      • getJSTypeCode

        private static int getJSTypeCode​(java.lang.String clsName,
                                         TypeDeclarationFactory typesFactory)
                                  throws java.lang.ClassNotFoundException
        Converts JavaScript class name to integer code
        Parameters:
        clsName -
        Returns:
        Throws:
        java.lang.ClassNotFoundException
      • getSizeRank

        static int getSizeRank​(java.lang.Class<?> aType)