Class IntegerCachedClass


public class IntegerCachedClass extends NumberCachedClass
Provides optimized reflection caching for int and Integer. Coerces numeric arguments to int values for type-safe method invocation. Optionally allows null values for the boxed Integer class variant.
  • Constructor Details

    • IntegerCachedClass

      public IntegerCachedClass(Class klazz, ClassInfo classInfo, boolean allowNull)
      Constructs a cached class representation for the given integer class.
      Parameters:
      klazz - the integer class to cache (either int.class or Integer.class)
      classInfo - the class information associated with this cached class
      allowNull - true to allow null values (for Integer.class), false for primitive int
  • Method Details

    • coerceArgument

      public Object coerceArgument(Object argument)
      Coerces the given numeric argument to an int value.
      Overrides:
      coerceArgument in class NumberCachedClass
      Parameters:
      argument - the argument to coerce
      Returns:
      the argument as an int, or the original argument if not a number
    • isDirectlyAssignable

      public boolean isDirectlyAssignable(Object argument)
      Checks if the given argument is directly assignable without type conversion.
      Overrides:
      isDirectlyAssignable in class CachedClass
      Parameters:
      argument - the argument to check
      Returns:
      true if the argument is an Integer instance, or null is allowed, false otherwise
    • isAssignableFrom

      public boolean isAssignableFrom(Class classToTransformFrom)
      Determines if the given class can be transformed to int/Integer. Accepts integral types, boxed integral types, and BigInteger.
      Overrides:
      isAssignableFrom in class NumberCachedClass
      Parameters:
      classToTransformFrom - the source class to check
      Returns:
      true if the class can be transformed to int, false otherwise