Package: org.codehaus.groovy.reflection.stdclasses

## [Java] Class LongCachedClass

- org.codehaus.groovy.reflection.stdclasses.LongCachedClass

-     public class LongCachedClass
      extends NumberCachedClass

  Provides optimized reflection caching for `long` and Long. Coerces numeric arguments to long values for type-safe method invocation. Optionally allows `null` values for the boxed Long class variant.

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class CachedClass` | `EMPTY_ARRAY, classInfo, isArray, isInterface, isNumber, isPrimitive, modifiers, mopMethods`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `LongCachedClass(Class klazz, ClassInfo classInfo, boolean allowNull)` Constructs a cached class representation for the given long class.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public Object` | `coerceArgument(Object argument)` Coerces the given numeric argument to a long value.
    `` | `public boolean` | `isAssignableFrom(Class classToTransformFrom)` Determines if the given class can be transformed to long/Long.
    `` | `public boolean` | `isDirectlyAssignable(Object argument)` Checks if the given argument is directly assignable without type conversion.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class NumberCachedClass` | `coerceArgument, isAssignableFrom`
    `class CachedClass` | `addNewMopMethods, coerceArgument, getCachedClass, getCachedSuperClass, getCallSiteLoader, getConstructors, getDeclaredInterfaces, getFields, getHierarchy, getInterfaces, getMethods, getModifiers, getName, getNewMetaMethods, getSuperClassDistance, getTheClass, getTypeDescription, hashCode, isAssignableFrom, isDirectlyAssignable, isInterface, isPrimitive, isVoid, searchMethods, setNewMopMethods, toString`

- - ### Constructor Detail

    - #### public LongCachedClass(Class klazz, ClassInfo classInfo, boolean allowNull)

      Constructs a cached class representation for the given long class.

      Parameters:
        `klazz` - the long class to cache (either `long.class` or Long.class)
        `classInfo` - the class information associated with this cached class
        `allowNull` - `true` to allow `null` values (for Long.class), `false` for primitive `long`

  - ### Method Detail

    - #### public Object coerceArgument(Object argument)

      Coerces the given numeric argument to a long value.

      Parameters:
        `argument` - the argument to coerce
      Returns:
        the argument as a `long`, or the original argument if not a number

    - #### public boolean isAssignableFrom(Class classToTransformFrom)

      Determines if the given class can be transformed to long/Long. Accepts integral types and boxed integral types.

      Parameters:
        `classToTransformFrom` - the source class to check
      Returns:
        `true` if the class can be transformed to long, `false` otherwise

    - #### public boolean isDirectlyAssignable(Object argument)

      Checks if the given argument is directly assignable without type conversion.

      Parameters:
        `argument` - the argument to check
      Returns:
        `true` if the argument is a Long instance, or `null` is allowed, `false` otherwise