NewStaticMetaMethod (Groovy 2.4.10)
Date: 2017-03-14

org.codehaus.groovy.runtime.metaclass

## Class NewStaticMetaMethod

- java.lang.Object
- - org.codehaus.groovy.reflection.ParameterTypes
  - - groovy.lang.MetaMethod
    - - org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
      - - org.codehaus.groovy.runtime.metaclass.NewMetaMethod
        - - org.codehaus.groovy.runtime.metaclass.NewStaticMetaMethod

- All Implemented Interfaces:
    Cloneable

      public class NewStaticMetaMethod
      extends NewMetaMethod

  A MetaMethod implementation where the underlying method is really a static helper method on some class. This implementation is used to add new static methods to the JDK writing them as normal static methods with the first parameter being the class on which the method is added.
  Author:
    Guillaume Laforge

- - ### Field Summary

    - ### Fields inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod

      `bytecodeParameterTypes, EMPTY_TYPE_ARRAY`

    - ### Fields inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod

      `method`

    - ### Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `isVargsMethod, nativeParamTypes, parameterTypes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NewStaticMetaMethod(CachedMethod method)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getModifiers()` Returns the modifiers for this method
    `Object` | `invoke(Object object, Object[] arguments)` Invoke this method
    `boolean` | `isStatic()` Returns whether or not this method is static.

    - ### Methods inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod

      `getBytecodeParameterTypes, getDeclaringClass, getOwnerClass`

    - ### Methods inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod

      `getCachedMethod, getName, getPT, getReturnType, toString`

    - ### Methods inherited from class groovy.lang.MetaMethod

      `checkParameters, clone, doMethodInvoke, equal, equal, getDescriptor, getMopName, getSignature, isAbstract, isCacheable, isMethod, isPrivate, isProtected, isPublic, isSame, processDoMethodInvokeException`

    - ### Methods inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes`

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

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

- - ### Constructor Detail

    - #### NewStaticMetaMethod

          public NewStaticMetaMethod(CachedMethod method)

  - ### Method Detail

    - #### isStatic

          public boolean isStatic()

      Description copied from class: `MetaMethod`
      Returns whether or not this method is static.
      Overrides:
        `isStatic` in class `MetaMethod`
      Returns:
        true if this method is static

    - #### getModifiers

          public int getModifiers()

      Description copied from class: `MetaMethod`
      Returns the modifiers for this method
      Overrides:
        `getModifiers` in class `ReflectionMetaMethod`
      Returns:
        modifiers as an int.

    - #### invoke

          public Object invoke(Object object,
                               Object[] arguments)

      Description copied from class: `MetaMethod`
      Invoke this method
      Overrides:
        `invoke` in class `ReflectionMetaMethod`
      Parameters:
        `object` - The object this method should be invoked on
        `arguments` - The arguments for the method if applicable
      Returns:
        The return value of the invocation