Package org.codehaus.groovy.runtime.dgmimpl

## Class NumberNumberMinus

- java.lang.Object
- - org.codehaus.groovy.reflection.ParameterTypes
  - - groovy.lang.MetaMethod
    - - org.codehaus.groovy.runtime.callsite.CallSiteAwareMetaMethod
      - - org.codehaus.groovy.runtime.dgmimpl.NumberNumberMetaMethod
        - - org.codehaus.groovy.runtime.dgmimpl.NumberNumberMinus

- All Implemented Interfaces:
    `java.lang.Cloneable`

      public final class NumberNumberMinus
      extends NumberNumberMetaMethod

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.codehaus.groovy.runtime.dgmimpl.NumberNumberMetaMethod

      `NumberNumberMetaMethod.NumberNumberCallSite`

  - ### Field Summary

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

      `EMPTY_ARRAY`

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

      `isVargsMethod, nativeParamTypes, parameterTypes`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `NumberNumberMinus()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `CallSite` | `createDoubleDouble​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createDoubleFloat​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createDoubleInteger​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createDoubleLong​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createFloatDouble​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createFloatFloat​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createFloatInteger​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createFloatLong​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createIntegerDouble​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createIntegerFloat​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createIntegerInteger​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createIntegerLong​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createLongDouble​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createLongFloat​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createLongInteger​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createLongLong​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `CallSite` | `createNumberNumber​(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, java.lang.Class[] params, java.lang.Object receiver, java.lang.Object[] args)` |
    `java.lang.String` | `getName()` | Returns the name of the method represented by this class
    `java.lang.Object` | `invoke​(java.lang.Object object, java.lang.Object[] arguments)` | Invoke this method
    `static java.lang.Number` | `minus​(java.lang.Number left, java.lang.Number right)` | Subtraction of two Numbers.

    - ### Methods inherited from class org.codehaus.groovy.runtime.dgmimpl.NumberNumberMetaMethod

      `createPojoCallSite, getDeclaringClass, getModifiers, getReturnType`

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

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

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

      `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, getPT, 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

    - #### NumberNumberMinus

          public NumberNumberMinus()

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Description copied from class: `MetaMethod`
      Returns the name of the method represented by this class
      Specified by:
        `getName` in class `MetaMethod`
      Returns:
        name of this method

    - #### invoke

          public java.lang.Object invoke​(java.lang.Object object,
                                         java.lang.Object[] arguments)

      Description copied from class: `MetaMethod`
      Invoke this method
      Specified by:
        `invoke` in class `MetaMethod`
      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

    - #### minus

          public static java.lang.Number minus​(java.lang.Number left,
                                               java.lang.Number right)

      Subtraction of two Numbers.
      Parameters:
        `left` - a Number
        `right` - another Number to subtract to the first one
      Returns:
        the subtraction

    - #### createIntegerInteger

          public CallSite createIntegerInteger​(CallSite site,
                                               MetaClassImpl metaClass,
                                               MetaMethod metaMethod,
                                               java.lang.Class[] params,
                                               java.lang.Object receiver,
                                               java.lang.Object[] args)

      Specified by:
        `createIntegerInteger` in class `NumberNumberMetaMethod`

    - #### createIntegerLong

          public CallSite createIntegerLong​(CallSite site,
                                            MetaClassImpl metaClass,
                                            MetaMethod metaMethod,
                                            java.lang.Class[] params,
                                            java.lang.Object receiver,
                                            java.lang.Object[] args)

      Specified by:
        `createIntegerLong` in class `NumberNumberMetaMethod`

    - #### createIntegerFloat

          public CallSite createIntegerFloat​(CallSite site,
                                             MetaClassImpl metaClass,
                                             MetaMethod metaMethod,
                                             java.lang.Class[] params,
                                             java.lang.Object receiver,
                                             java.lang.Object[] args)

      Specified by:
        `createIntegerFloat` in class `NumberNumberMetaMethod`

    - #### createIntegerDouble

          public CallSite createIntegerDouble​(CallSite site,
                                              MetaClassImpl metaClass,
                                              MetaMethod metaMethod,
                                              java.lang.Class[] params,
                                              java.lang.Object receiver,
                                              java.lang.Object[] args)

      Specified by:
        `createIntegerDouble` in class `NumberNumberMetaMethod`

    - #### createLongInteger

          public CallSite createLongInteger​(CallSite site,
                                            MetaClassImpl metaClass,
                                            MetaMethod metaMethod,
                                            java.lang.Class[] params,
                                            java.lang.Object receiver,
                                            java.lang.Object[] args)

      Specified by:
        `createLongInteger` in class `NumberNumberMetaMethod`

    - #### createLongLong

          public CallSite createLongLong​(CallSite site,
                                         MetaClassImpl metaClass,
                                         MetaMethod metaMethod,
                                         java.lang.Class[] params,
                                         java.lang.Object receiver,
                                         java.lang.Object[] args)

      Specified by:
        `createLongLong` in class `NumberNumberMetaMethod`

    - #### createLongFloat

          public CallSite createLongFloat​(CallSite site,
                                          MetaClassImpl metaClass,
                                          MetaMethod metaMethod,
                                          java.lang.Class[] params,
                                          java.lang.Object receiver,
                                          java.lang.Object[] args)

      Specified by:
        `createLongFloat` in class `NumberNumberMetaMethod`

    - #### createLongDouble

          public CallSite createLongDouble​(CallSite site,
                                           MetaClassImpl metaClass,
                                           MetaMethod metaMethod,
                                           java.lang.Class[] params,
                                           java.lang.Object receiver,
                                           java.lang.Object[] args)

      Specified by:
        `createLongDouble` in class `NumberNumberMetaMethod`

    - #### createFloatInteger

          public CallSite createFloatInteger​(CallSite site,
                                             MetaClassImpl metaClass,
                                             MetaMethod metaMethod,
                                             java.lang.Class[] params,
                                             java.lang.Object receiver,
                                             java.lang.Object[] args)

      Specified by:
        `createFloatInteger` in class `NumberNumberMetaMethod`

    - #### createFloatLong

          public CallSite createFloatLong​(CallSite site,
                                          MetaClassImpl metaClass,
                                          MetaMethod metaMethod,
                                          java.lang.Class[] params,
                                          java.lang.Object receiver,
                                          java.lang.Object[] args)

      Specified by:
        `createFloatLong` in class `NumberNumberMetaMethod`

    - #### createFloatFloat

          public CallSite createFloatFloat​(CallSite site,
                                           MetaClassImpl metaClass,
                                           MetaMethod metaMethod,
                                           java.lang.Class[] params,
                                           java.lang.Object receiver,
                                           java.lang.Object[] args)

      Specified by:
        `createFloatFloat` in class `NumberNumberMetaMethod`

    - #### createFloatDouble

          public CallSite createFloatDouble​(CallSite site,
                                            MetaClassImpl metaClass,
                                            MetaMethod metaMethod,
                                            java.lang.Class[] params,
                                            java.lang.Object receiver,
                                            java.lang.Object[] args)

      Specified by:
        `createFloatDouble` in class `NumberNumberMetaMethod`

    - #### createDoubleInteger

          public CallSite createDoubleInteger​(CallSite site,
                                              MetaClassImpl metaClass,
                                              MetaMethod metaMethod,
                                              java.lang.Class[] params,
                                              java.lang.Object receiver,
                                              java.lang.Object[] args)

      Specified by:
        `createDoubleInteger` in class `NumberNumberMetaMethod`

    - #### createDoubleLong

          public CallSite createDoubleLong​(CallSite site,
                                           MetaClassImpl metaClass,
                                           MetaMethod metaMethod,
                                           java.lang.Class[] params,
                                           java.lang.Object receiver,
                                           java.lang.Object[] args)

      Specified by:
        `createDoubleLong` in class `NumberNumberMetaMethod`

    - #### createDoubleFloat

          public CallSite createDoubleFloat​(CallSite site,
                                            MetaClassImpl metaClass,
                                            MetaMethod metaMethod,
                                            java.lang.Class[] params,
                                            java.lang.Object receiver,
                                            java.lang.Object[] args)

      Specified by:
        `createDoubleFloat` in class `NumberNumberMetaMethod`

    - #### createDoubleDouble

          public CallSite createDoubleDouble​(CallSite site,
                                             MetaClassImpl metaClass,
                                             MetaMethod metaMethod,
                                             java.lang.Class[] params,
                                             java.lang.Object receiver,
                                             java.lang.Object[] args)

      Specified by:
        `createDoubleDouble` in class `NumberNumberMetaMethod`

    - #### createNumberNumber

          public CallSite createNumberNumber​(CallSite site,
                                             MetaClassImpl metaClass,
                                             MetaMethod metaMethod,
                                             java.lang.Class[] params,
                                             java.lang.Object receiver,
                                             java.lang.Object[] args)

      Specified by:
        `createNumberNumber` in class `NumberNumberMetaMethod`