org.apache.bcel.classfile

Class DescendingVisitor

public class DescendingVisitor extends Object implements Visitor

Traverses a JavaClass with another Visitor object 'piggy-backed' that is applied to all components of a JavaClass object. I.e. this class supplies the traversal strategy, other classes can make use of it.
Constructor Summary
DescendingVisitor(JavaClass clazz, Visitor visitor)
Method Summary
Objectcurrent()
Objectpredecessor()
Objectpredecessor(int level)
voidvisit()
Start traversal.
voidvisitCode(Code code)
voidvisitCodeException(CodeException ce)
voidvisitConstantClass(ConstantClass constant)
voidvisitConstantDouble(ConstantDouble constant)
voidvisitConstantFieldref(ConstantFieldref constant)
voidvisitConstantFloat(ConstantFloat constant)
voidvisitConstantInteger(ConstantInteger constant)
voidvisitConstantInterfaceMethodref(ConstantInterfaceMethodref constant)
voidvisitConstantLong(ConstantLong constant)
voidvisitConstantMethodref(ConstantMethodref constant)
voidvisitConstantNameAndType(ConstantNameAndType constant)
voidvisitConstantPool(ConstantPool cp)
voidvisitConstantString(ConstantString constant)
voidvisitConstantUtf8(ConstantUtf8 constant)
voidvisitConstantValue(ConstantValue cv)
voidvisitDeprecated(Deprecated attribute)
voidvisitExceptionTable(ExceptionTable table)
voidvisitField(Field field)
voidvisitInnerClass(InnerClass inner)
voidvisitInnerClasses(InnerClasses ic)
voidvisitJavaClass(JavaClass _clazz)
voidvisitLineNumber(LineNumber number)
voidvisitLineNumberTable(LineNumberTable table)
voidvisitLocalVariable(LocalVariable var)
voidvisitLocalVariableTable(LocalVariableTable table)
voidvisitLocalVariableTypeTable(LocalVariableTypeTable table)
voidvisitMethod(Method method)
voidvisitSignature(Signature attribute)
voidvisitSourceFile(SourceFile attribute)
voidvisitStackMap(StackMap table)
voidvisitStackMapEntry(StackMapEntry var)
voidvisitSynthetic(Synthetic attribute)
voidvisitUnknown(Unknown attribute)

Constructor Detail

DescendingVisitor

public DescendingVisitor(JavaClass clazz, Visitor visitor)

Parameters: clazz Class to traverse visitor visitor object to apply to all components

Method Detail

current

public Object current()

Returns: current object

predecessor

public Object predecessor()

Returns: container of current entitity, i.e., predecessor during traversal

predecessor

public Object predecessor(int level)

Parameters: level nesting level, i.e., 0 returns the direct predecessor

Returns: container of current entitity, i.e., predecessor during traversal

visit

public void visit()
Start traversal.

visitCode

public void visitCode(Code code)

visitCodeException

public void visitCodeException(CodeException ce)

visitConstantClass

public void visitConstantClass(ConstantClass constant)

visitConstantDouble

public void visitConstantDouble(ConstantDouble constant)

visitConstantFieldref

public void visitConstantFieldref(ConstantFieldref constant)

visitConstantFloat

public void visitConstantFloat(ConstantFloat constant)

visitConstantInteger

public void visitConstantInteger(ConstantInteger constant)

visitConstantInterfaceMethodref

public void visitConstantInterfaceMethodref(ConstantInterfaceMethodref constant)

visitConstantLong

public void visitConstantLong(ConstantLong constant)

visitConstantMethodref

public void visitConstantMethodref(ConstantMethodref constant)

visitConstantNameAndType

public void visitConstantNameAndType(ConstantNameAndType constant)

visitConstantPool

public void visitConstantPool(ConstantPool cp)

visitConstantString

public void visitConstantString(ConstantString constant)

visitConstantUtf8

public void visitConstantUtf8(ConstantUtf8 constant)

visitConstantValue

public void visitConstantValue(ConstantValue cv)

visitDeprecated

public void visitDeprecated(Deprecated attribute)

visitExceptionTable

public void visitExceptionTable(ExceptionTable table)

visitField

public void visitField(Field field)

visitInnerClass

public void visitInnerClass(InnerClass inner)

visitInnerClasses

public void visitInnerClasses(InnerClasses ic)

visitJavaClass

public void visitJavaClass(JavaClass _clazz)

visitLineNumber

public void visitLineNumber(LineNumber number)

visitLineNumberTable

public void visitLineNumberTable(LineNumberTable table)

visitLocalVariable

public void visitLocalVariable(LocalVariable var)

visitLocalVariableTable

public void visitLocalVariableTable(LocalVariableTable table)

visitLocalVariableTypeTable

public void visitLocalVariableTypeTable(LocalVariableTypeTable table)

visitMethod

public void visitMethod(Method method)

visitSignature

public void visitSignature(Signature attribute)

visitSourceFile

public void visitSourceFile(SourceFile attribute)

visitStackMap

public void visitStackMap(StackMap table)

visitStackMapEntry

public void visitStackMapEntry(StackMapEntry var)

visitSynthetic

public void visitSynthetic(Synthetic attribute)

visitUnknown

public void visitUnknown(Unknown attribute)