An interface that defines methods that implementers of mutable Meta classes should specify. It provides operations to perform mutations on the MetaClass instance.
Whether a MetaClass allows mutation is up to the MetaClass itself and considerations of Thread safety need to be taken into account when making a MetaClass mutable
The default implementation allows mutation of MetaClass instances before initialisation (before the initialize() method is called) but not after, thus ensuring Thread safety once a MetaClass has been constructed and placed in the registry
| Type Params | Return Type | Name and description | 
|---|---|---|
|  | void | addMetaBeanProperty(MetaBeanProperty metaBeanProperty)Adds a new MetaBeanProperty to the MetaClass | 
|  | void | addMetaMethod(MetaMethod metaMethod)Adds a new MetaMethod to the MetaClass | 
|  | void | addNewInstanceMethod(Method method)adds a new instance method to this MetaClass. | 
|  | void | addNewStaticMethod(Method method)adds a new static method to this MetaClass. | 
|  | boolean | isModified()Return whether the MetaClass has been modified or not | 
| Methods inherited from class | Name | 
|---|---|
| interface MetaClass | getAttribute, getClassNode, getMetaMethods, getMethods, getProperties, getProperty, initialize, invokeMethod, invokeMissingMethod, invokeMissingProperty, pickMethod, selectConstructorAndTransformArguments, setAttribute, setProperty | 
| interface MetaObjectProtocol | getAttribute, getMetaMethod, getMetaProperty, getMethods, getProperties, getProperty, getStaticMetaMethod, getTheClass, hasProperty, invokeConstructor, invokeMethod, invokeMethod, invokeStaticMethod, respondsTo, respondsTo, setAttribute, setProperty | 
Adds a new MetaBeanProperty to the MetaClass
metaBeanProperty -  The MetaBeanProperty instanceAdds a new MetaMethod to the MetaClass
metaMethod -  The MetaMethod to addadds a new instance method to this MetaClass. Instance methods are able to overwrite the original methods of the class. Calling this method should not be done after initialise was called.
method -  the method to be addedadds a new static method to this MetaClass. This is only possible as long as initialise was not called.
method -  the method to be addedReturn whether the MetaClass has been modified or not