Package: org.codehaus.groovy.vmplugin.v8

## [Java] Class CacheableCallSite

- 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 and description
    `CacheableCallSite(MethodType type)`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public MethodHandleWrapper` | `getAndPut(String className, org.codehaus.groovy.runtime.memoize.MemoizeCache.ValueProvider<? super String, ? extends MethodHandleWrapper> valueProvider)`
    `` | `public MethodHandle` | `getDefaultTarget()`
    `` | `public MethodHandle` | `getFallbackTarget()`
    `` | `public long` | `incrementFallbackCount()`
    `` | `public MethodHandleWrapper` | `put(String name, MethodHandleWrapper mhw)`
    `` | `protected boolean` | `removeEldestEntry(Map.Entry eldest)`
    `` | `public void` | `resetFallbackCount()`
    `` | `public void` | `setDefaultTarget(MethodHandle defaultTarget)`
    `` | `public void` | `setFallbackTarget(MethodHandle fallbackTarget)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class MutableCallSite` | `dynamicInvoker, getTarget, setTarget, syncAll, type, wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Constructor Detail

    - #### public CacheableCallSite(MethodType type)

  - ### Method Detail

    - #### public MethodHandleWrapper getAndPut(String className, org.codehaus.groovy.runtime.memoize.MemoizeCache.ValueProvider<? super String, ? extends MethodHandleWrapper> valueProvider)

    - #### public MethodHandle getDefaultTarget()

    - #### public MethodHandle getFallbackTarget()

    - #### public long incrementFallbackCount()

    - #### public MethodHandleWrapper put(String name, MethodHandleWrapper mhw)

    - #### @Override protected boolean removeEldestEntry(Map.Entry eldest)

    - #### public void resetFallbackCount()

    - #### public void setDefaultTarget(MethodHandle defaultTarget)

    - #### public void setFallbackTarget(MethodHandle fallbackTarget)