TypeHelper (Groovy 2.4.9)
Date: 2017-02-24

org.codehaus.groovy.vmplugin.v7

## Class TypeHelper

- java.lang.Object
- - org.codehaus.groovy.vmplugin.v7.TypeHelper

-     public class TypeHelper
      extends Object

  This class contains helper methods for converting and comparing types. WARNING: This class is for internal use only. do not use it outside of its package and not outside groovy-core.
  Author:
    Jochen "blackdrag" Theodorou

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TypeHelper()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected static boolean` | `argumentClassIsParameterClass(Class argumentClass, Class parameterClass)` Realizes an unsharp equal for the class.
    `protected static Class` | `getWrapperClass(Class c)` Get wrapper class for a given class.
    `protected static boolean` | `isBigDecCategory(Class x)`
    `protected static boolean` | `isDoubleCategory(Class x)`
    `protected static boolean` | `isIntCategory(Class x)`
    `protected static boolean` | `isLongCategory(Class x)`
    `protected static MethodType` | `replaceWithMoreSpecificType(Object[] args, MethodType callSiteType)` Replaces the types in the callSiteType parameter if more specific types given through the arguments.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TypeHelper

          public TypeHelper()

  - ### Method Detail

    - #### getWrapperClass

          protected static Class getWrapperClass(Class c)

      Get wrapper class for a given class. If the class is for a primitive number type, then the wrapper class will be returned. If it is no primitive number type, we return the class itself.

    - #### argumentClassIsParameterClass

          protected static boolean argumentClassIsParameterClass(Class argumentClass,
                                                                 Class parameterClass)

      Realizes an unsharp equal for the class. In general we return true if the provided arguments are the same. But we will also return true if our argument class is a wrapper for the parameter class. For example the parameter is an int and the argument class is a wrapper.

    - #### replaceWithMoreSpecificType

          protected static MethodType replaceWithMoreSpecificType(Object[] args,
                                                                  MethodType callSiteType)

      Replaces the types in the callSiteType parameter if more specific types given through the arguments. This is in general the case, unless the argument is null.

    - #### isIntCategory

          protected static boolean isIntCategory(Class x)

    - #### isLongCategory

          protected static boolean isLongCategory(Class x)

    - #### isBigDecCategory

          protected static boolean isBigDecCategory(Class x)

    - #### isDoubleCategory

          protected static boolean isDoubleCategory(Class x)