Package org.codehaus.groovy.transform.stc

# Class AbstractExtensionMethodCache

java.lang.Object
org.codehaus.groovy.transform.stc.AbstractExtensionMethodCache

Direct Known Subclasses:
  `ExtensionMethodCache`

public abstract class AbstractExtensionMethodCache extends Object

Since:
  3.0.0

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractExtensionMethodCache()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected abstract void`
  `addAdditionalClassesToScan(Set<Class> instanceExtClasses, Set<Class> staticExtClasses)`
  Adds implementation-specific extension classes to the scan sets.
  `Map<String,List<MethodNode>>`
  `get(ClassLoader loader)`
  Returns the cached extension methods for the supplied class loader.
  `protected abstract String`
  `getDisablePropertyName()`
  Returns the system property used to disable selected extension methods.
  `protected abstract Predicate<MethodNode>`
  `getMethodFilter()`
  Returns a predicate that excludes methods from the cache.
  `protected abstract Function<MethodNode,String>`
  `getMethodMapper()`
  Maps an extension method to the cache key used during lookup.

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

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

- ## Constructor Details

  - ### AbstractExtensionMethodCache

    public AbstractExtensionMethodCache()

- ## Method Details

  - ### get

    public Map<String,List<MethodNode>> get(ClassLoader loader)
    Returns the cached extension methods for the supplied class loader.

  - ### addAdditionalClassesToScan

    protected abstract void addAdditionalClassesToScan(Set<Class> instanceExtClasses, Set<Class> staticExtClasses)
    Adds implementation-specific extension classes to the scan sets.

  - ### getDisablePropertyName

    protected abstract String getDisablePropertyName()
    Returns the system property used to disable selected extension methods.

  - ### getMethodFilter

    protected abstract Predicate<MethodNode> getMethodFilter()
    Returns a predicate that excludes methods from the cache.

  - ### getMethodMapper

    protected abstract Function<MethodNode,String> getMethodMapper()
    Maps an extension method to the cache key used during lookup.