Class JavaScriptFunctionType

java.lang.Object
org.fife.rsta.ac.js.ast.jsType.JavaScriptFunctionType

public class JavaScriptFunctionType extends Object
  • Field Details

    • CONVERSION_NONE

      public static int CONVERSION_NONE
    • CONVERSION_JS

      public static int CONVERSION_JS
    • BooleanClass

      public static Class<?> BooleanClass
    • ByteClass

      public static Class<?> ByteClass
    • CharacterClass

      public static Class<?> CharacterClass
    • ClassClass

      public static Class<?> ClassClass
    • DoubleClass

      public static Class<?> DoubleClass
    • FloatClass

      public static Class<?> FloatClass
    • IntegerClass

      public static Class<?> IntegerClass
    • LongClass

      public static Class<?> LongClass
    • NumberClass

      public static Class<?> NumberClass
    • ObjectClass

      public static Class<?> ObjectClass
    • ShortClass

      public static Class<?> ShortClass
    • StringClass

      public static Class<?> StringClass
    • DateClass

      public static Class<?> DateClass
    • JSBooleanClass

      public static Class<?> JSBooleanClass
    • JSStringClass

      public static Class<?> JSStringClass
    • JSNumberClass

      public static Class<?> JSNumberClass
    • JSObjectClass

      public static Class<?> JSObjectClass
    • JSDateClass

      public static Class<?> JSDateClass
    • JSArray

      public static Class<?> JSArray
    • name

      private String name
    • arguments

      private List<TypeDeclaration> arguments
    • JSTYPE_UNDEFINED

      private static final int JSTYPE_UNDEFINED
      See Also:
    • JSTYPE_BOOLEAN

      private static final int JSTYPE_BOOLEAN
      See Also:
    • JSTYPE_NUMBER

      private static final int JSTYPE_NUMBER
      See Also:
    • JSTYPE_STRING

      private static final int JSTYPE_STRING
      See Also:
    • JSTYPE_ARRAY

      private static final int JSTYPE_ARRAY
      See Also:
    • JSTYPE_OBJECT

      private static final int JSTYPE_OBJECT
      See Also:
  • Constructor Details

  • Method Details

    • getName

      public String getName()
    • getArguments

      public List<TypeDeclaration> getArguments()
    • addArgument

      public void addArgument(TypeDeclaration type)
    • getArgumentCount

      public int getArgumentCount()
    • getArgument

      public TypeDeclaration getArgument(int index)
    • 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
    • convertParamType

      private TypeDeclaration convertParamType(TypeDeclaration type, SourceCompletionProvider provider)
      Convert parameter into TypeDeclaration
      Parameters:
      type -
      provider -
      Returns:
    • 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 Class<?> convertClassToJavaClass(String name, TypeDeclarationFactory typesFactory) throws ClassNotFoundException
      Converts TypeDeclaration qualified name to Java Class
      Parameters:
      name -
      Returns:
      Throws:
      ClassNotFoundException
    • parseFunction

      public static JavaScriptFunctionType parseFunction(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(String clsName, TypeDeclarationFactory typesFactory) throws ClassNotFoundException
      Converts JavaScript class name to integer code
      Parameters:
      clsName -
      Returns:
      Throws:
      ClassNotFoundException
    • getSizeRank

      static int getSizeRank(Class<?> aType)