Package org.codehaus.groovy.vmplugin.v8

## Class CacheableCallSite

- java.lang.Object
- - java.lang.invoke.CallSite
  - - java.lang.invoke.MutableCallSite
    - - org.codehaus.groovy.vmplugin.v8.CacheableCallSite

-     public class CacheableCallSite
      extends MutableCallSite

  Represents a cacheable call site, which can reduce the cost of resolving methods
  Since:
    3.0.0

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CacheableCallSite​(MethodType type)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper` | `getAndPut​(String className, MemoizeCache.ValueProvider<? super String,​? extends org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper> valueProvider)` |
    `MethodHandle` | `getDefaultTarget()` |
    `MethodHandle` | `getFallbackTarget()` |
    `long` | `incrementFallbackCount()` |
    `org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper` | `put​(String name, org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper mhw)` |
    `void` | `resetFallbackCount()` |
    `void` | `setDefaultTarget​(MethodHandle defaultTarget)` |
    `void` | `setFallbackTarget​(MethodHandle fallbackTarget)` |

    - ### Methods inherited from class java.lang.invoke.MutableCallSite

      `dynamicInvoker, getTarget, setTarget, syncAll`

    - ### Methods inherited from class java.lang.invoke.CallSite

      `type`

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

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

- - ### Constructor Detail

    - #### CacheableCallSite

          public CacheableCallSite​(MethodType type)

  - ### Method Detail

    - #### getAndPut

          public org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper getAndPut​(String className,
                                                                               MemoizeCache.ValueProvider<? super String,​? extends org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper> valueProvider)

    - #### put

          public org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper put​(String name,
                                                                         org.codehaus.groovy.vmplugin.v8.MethodHandleWrapper mhw)

    - #### incrementFallbackCount

          public long incrementFallbackCount()

    - #### resetFallbackCount

          public void resetFallbackCount()

    - #### getDefaultTarget

          public MethodHandle getDefaultTarget()

    - #### setDefaultTarget

          public void setDefaultTarget​(MethodHandle defaultTarget)

    - #### getFallbackTarget

          public MethodHandle getFallbackTarget()

    - #### setFallbackTarget

          public void setFallbackTarget​(MethodHandle fallbackTarget)