# Hierarchy For Package org.codehaus.groovy.runtime.metaclass

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap (implements java.lang.Cloneable, java.io.Serializable)
  - java.lang.ClassLoader
    - org.codehaus.groovy.runtime.metaclass.ReflectorLoader
  - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap.BarrierLock (implements java.io.Serializable)
  - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap.Entry (implements java.util.Map.Entry<K,V>)
  - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap.HashIterator (implements java.util.Enumeration<E>, java.util.Iterator<E>)
    - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap.KeyIterator
    - org.codehaus.groovy.runtime.metaclass.ConcurrentReaderHashMap.ValueIterator
  - org.codehaus.groovy.runtime.metaclass.DefaultMetaClassInfo
  - org.codehaus.groovy.runtime.metaclass.DefaultMetaClassInfo.ConstantMetaClassVersioning
  - groovy.lang.DelegatingMetaClass (implements groovy.lang.GroovyObject, groovy.lang.MetaClass, groovy.lang.MutableMetaClass)
    - org.codehaus.groovy.runtime.metaclass.OwnedMetaClass
      - org.codehaus.groovy.runtime.metaclass.MixedInMetaClass
  - groovy.lang.MetaClassImpl (implements groovy.lang.MetaClass, groovy.lang.MutableMetaClass)
    - org.codehaus.groovy.runtime.metaclass.ClosureMetaClass
  - org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl (implements groovy.lang.MetaClassRegistry)
  - org.codehaus.groovy.runtime.metaclass.MetaMethodIndex
  - org.codehaus.groovy.runtime.metaclass.MetaMethodIndex.CacheEntry
  - org.codehaus.groovy.runtime.metaclass.MetaMethodIndex.Entry
  - org.codehaus.groovy.runtime.metaclass.MetaMethodIndex.Header
  - groovy.lang.MetaProperty (implements groovy.lang.MetaMember)
    - groovy.lang.MetaBeanProperty
      - org.codehaus.groovy.runtime.metaclass.MixinInstanceMetaProperty
      - org.codehaus.groovy.runtime.metaclass.ThreadManagedMetaBeanProperty
    - org.codehaus.groovy.runtime.metaclass.MethodMetaProperty
      - org.codehaus.groovy.runtime.metaclass.MethodMetaProperty.GetBeanMethodMetaProperty
      - org.codehaus.groovy.runtime.metaclass.MethodMetaProperty.GetMethodMetaProperty
    - org.codehaus.groovy.runtime.metaclass.MultipleSetterProperty
  - org.codehaus.groovy.runtime.MethodKey
    - org.codehaus.groovy.runtime.metaclass.TemporaryMethodKey
  - org.codehaus.groovy.reflection.ParameterTypes
    - groovy.lang.MetaMethod (implements java.lang.Cloneable, groovy.lang.MetaMember)
      - org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod (implements groovy.lang.ClosureInvokingMethod)
      - org.codehaus.groovy.runtime.metaclass.ClosureStaticMetaMethod (implements groovy.lang.ClosureInvokingMethod)
      - org.codehaus.groovy.runtime.metaclass.MixinInstanceMetaMethod
      - org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
        - org.codehaus.groovy.runtime.metaclass.NewMetaMethod
          - org.codehaus.groovy.runtime.metaclass.NewInstanceMetaMethod
          - org.codehaus.groovy.runtime.metaclass.NewStaticMetaMethod
      - org.codehaus.groovy.runtime.metaclass.TransformMetaMethod
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - groovy.lang.GroovyRuntimeException
          - org.codehaus.groovy.runtime.metaclass.MethodSelectionException
          - groovy.lang.MissingMethodException
            - org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack
              - org.codehaus.groovy.runtime.metaclass.MissingMethodExecutionFailed
          - groovy.lang.MissingPropertyException
            - org.codehaus.groovy.runtime.metaclass.MissingPropertyExceptionNoStack

## Interface Hierarchy

- org.codehaus.groovy.runtime.metaclass.MetaMethodIndex.EntryIterator