Package 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
Description
`TypeHelper()`

## Method Summary

Modifier and Type
Method
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 Details

### TypeHelper

public TypeHelper()

## Method Details

### 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)