# Package org.codehaus.groovy.grails.commons.metaclass

##

- Interface Summary
  Interface | Description
  --- | ---
  ConstructorInterceptor | Extends interceptor interface to allow interception of constructors
  DynamicConstructor | Defines a dynamic constructor.
  DynamicMethodInvocation | Dynamic method invocation callback interface.
  DynamicMethods | Defines methods for a handling dynamic method, static method and property invocations.
  DynamicProperty | A Dynamic class property getter interface.
  FunctionCallback |
  Interceptor | Implementers of this interface can be registered in the ProxyMetaClass for notifications about method calls for objects managed by the ProxyMetaClass.
  PropertyAccessInterceptor | Adds the ability to intercept property getters/setters.
  StaticMethodInvocation | Static method invocation callback interface.

- Class Summary
  Class | Description
  --- | ---
  AbstractDynamicMethodInvocation | @author Steven Devijver
  AbstractDynamicMethods | Provides the base implementation responsible for performing dynamic method invocation such as the dynamic finders in GORM.
  AbstractDynamicMethodsInterceptor | Implements an the Interceptor interface to add support for using ProxyMetaClass to define dynamic methods.
  AbstractDynamicProperty | An abstract class for implementors of dynamic getters to implement.
  AbstractStaticMethodInvocation | @author Steven Devijver
  BaseApiProvider | @author Graeme Rocher
  BeanBinding | Extends Groovy's Binding Object to allow a binding to a particular bean where the properties of the Object become binding variables.
  ClosureInvokingDynamicMethod | An implementation of DynamicMethodInvocation that invokes a closure.
  CreateDynamicMethod | A dynamic static method that is a factory method for creating new instances.
  DefaultDynamicMethods | Simple concrete class implementation of AbstractDynamicMethods class.
  DynamicMethodsExpandoMetaClass | Extends ExpandoMetaClass and adds the ability to use regex to specified method matches that then get passed to the invocable closure.
  GenericDynamicProperty | A generic dyanmic property for any type.
  GroovyDynamicMethodsInterceptor | For dynamic methods applied to a Groovy object that registers itself with the GroovyObject instances meta class instance.
  InvocationCallback | @author Steven Devijver
  LazyMetaPropertyMap | A map implementation that reads an objects properties lazily using Groovy's MetaClass.
  MetaClassEnhancer | Enhances one or many MetaClasses with the given API methods provided by the super class BaseApiProvider.
  PropertyExpression | Designed for use with Groovy property access expressions like foo.bar.stuff.
  ProxyMetaClass | As subclass of MetaClass, ProxyMetaClass manages calls from Groovy Objects to POJOs.
  WeakGenericDynamicProperty | A generic dyanmic property for any type used a soft hashmap implementation for generic properties registered as global in the MetaClass.