|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
MAnnotatedElement | Mutable version of JAnnotatedElement. |
MAnnotation | Mutable version of JAnnotation. |
MClass | Mutable version of JClass. |
MComment | Mutable version of JComment. |
MConstructor | Mutable version of JConstructor. |
MElement | Mutable version of JElement. |
MField | Mutable version of JField. |
MInvokable | Mutable version of JInvokable. |
MMember | Mutable version of JMember. |
MMethod | Mutable version of JMethod. |
MPackage | Mutable version of JPackage. |
MParameter | Mutable version of JParameter. |
MSourcePosition | Mutable version of JSourcePosition. |
MTag |
Provides a modifiable view of the JElement tree. This package contains interfaces which parallel and extend the JElement tree, adding and editing functionality to that the view of the java type system can be modified.
Typically, this is only used in conjunction with an 'initializer' ElementVisitor which is run on a JClass when it is first loaded. The initializer might use these editable 'M*' abstractions to, for example, do some pre-processing on the comments or annotations, or to determine which methods on a class should be exposed as JProperties. The M* classes are also used by JAM providers in implementing the JamClassBuilder interface, which populates an EClass with methods, fields, and so on.
It is also possible to use this package to synthesize a view of a java class which does not actually exist in any class or source file. This could be useful, for example, to drive a code-generation mechanism (Note that JAM does not provide a model for the contents of method bodies, so this may not be a useful approach).
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |