Class TypeHelper


  • public class TypeHelper
    extends java.lang.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.
    • Constructor Summary

      Constructors 
      Constructor Description
      TypeHelper()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      protected static boolean argumentClassIsParameterClass​(java.lang.Class argumentClass, java.lang.Class parameterClass)
      Realizes an unsharp equal for the class.
      protected static java.lang.Class getWrapperClass​(java.lang.Class c)
      Get wrapper class for a given class.
      protected static boolean isBigDecCategory​(java.lang.Class x)  
      protected static boolean isDoubleCategory​(java.lang.Class x)  
      protected static boolean isIntCategory​(java.lang.Class x)  
      protected static boolean isLongCategory​(java.lang.Class x)  
      protected static java.lang.invoke.MethodType replaceWithMoreSpecificType​(java.lang.Object[] args, java.lang.invoke.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 java.lang.Class getWrapperClass​(java.lang.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​(java.lang.Class argumentClass,
                                                               java.lang.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 java.lang.invoke.MethodType replaceWithMoreSpecificType​(java.lang.Object[] args,
                                                                                 java.lang.invoke.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​(java.lang.Class x)
      • isLongCategory

        protected static boolean isLongCategory​(java.lang.Class x)
      • isBigDecCategory

        protected static boolean isBigDecCategory​(java.lang.Class x)
      • isDoubleCategory

        protected static boolean isDoubleCategory​(java.lang.Class x)