Package org.logicalcobwebs.asm.tree

Provides an ASM class adapter that constructs a tree representation of the classes it visits.

See:
          Description

Class Summary
AbstractInsnNode A node that represents a bytecode instruction.
ClassNode A node that represents a class.
FieldInsnNode A node that represents a field instruction.
FieldNode A node that represents a field.
IincInsnNode A node that represents an IINC instruction.
InnerClassNode A node that represents an inner class.
InsnNode A node that represents a zero operand instruction.
IntInsnNode A node that represents an instruction with a single int operand.
JumpInsnNode A node that represents a jump instruction.
LdcInsnNode A node that represents an LDC instruction.
LineNumberNode A node that represents a line number declaration.
LocalVariableNode A node that represents a local variable declaration.
LookupSwitchInsnNode A node that represents a LOOKUPSWITCH instruction.
MethodInsnNode A node that represents a method instruction.
MethodNode A node that represents a method.
MultiANewArrayInsnNode A node that represents a MULTIANEWARRAY instruction.
TableSwitchInsnNode A node that represents a TABLESWITCH instruction.
TreeClassAdapter A ClassAdapter that constructs a tree representation of the classes it vists.
TreeCodeAdapter A CodeAdapter that constructs a tree representation of the methods it vists.
TryCatchBlockNode A node that represents a try catch block.
TypeInsnNode A node that represents a type instruction.
VarInsnNode A node that represents a local variable instruction.
 

Package org.logicalcobwebs.asm.tree Description

Provides an ASM class adapter that constructs a tree representation of the classes it visits. This class adapter can be useful to implement "complex" class manipulation operations, i.e., operations that would be very hard to implement without using a tree representation (such as optimizing the number of local variables used by a method).

However, this class adapter has a cost: it makes ASM bigger and slower. Indeed it requires more than twenty new classes, and multiplies the time needed to transform a class by almost two (it is almost two times faster to read, "modify" and write a class with a ClassAdapter than with a TreeClassAdapter). This is why this class adapter is bundled in an optional asm-tree.jar library that is separated from (but requires) the asm.jar library, which contains the core ASM framework. This is also why it is recommanded not to use this class adapter when it is possible.

Since:
ASM 1.3.3