Package org.apache.bcel.util
Class BCELifier
- java.lang.Object
-
- org.apache.bcel.classfile.EmptyVisitor
-
- org.apache.bcel.util.BCELifier
-
- All Implemented Interfaces:
Visitor
public class BCELifier extends EmptyVisitor
This class takes a given JavaClass object and converts it to a Java program that creates that very class using BCEL. This gives new users of BCEL a useful example showing how things are done with BCEL. It does not cover all features of BCEL, but tries to mimic hand-written code as close as possible.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBCELifier.FLAGSEnum corresponding to flag source.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidmain(java.lang.String[] argv)Default main method.static java.lang.StringprintFlags(int flags, BCELifier.FLAGS location)Return a string with the flag settingsvoidstart()Start Java code generationvoidvisitField(Field field)Visits a Field.voidvisitJavaClass(JavaClass clazz)Visits a JavaClass.voidvisitMethod(Method method)Visits a Method.voidvisitStackMap(StackMap stackMap)Visits a StackMap attribute.voidvisitStackMapEntry(StackMapEntry stackMapEntry)Visits a StackMapEntry.voidvisitStackMapType(StackMapType stackMapType)Visits aStackMapTypeobject.-
Methods inherited from class org.apache.bcel.classfile.EmptyVisitor
visitAnnotation, visitAnnotationDefault, visitAnnotationEntry, visitBootstrapMethods, visitCode, visitCodeException, visitConstantClass, visitConstantDouble, visitConstantDynamic, visitConstantFieldref, visitConstantFloat, visitConstantInteger, visitConstantInterfaceMethodref, visitConstantInvokeDynamic, visitConstantLong, visitConstantMethodHandle, visitConstantMethodref, visitConstantMethodType, visitConstantModule, visitConstantNameAndType, visitConstantPackage, visitConstantPool, visitConstantString, visitConstantUtf8, visitConstantValue, visitDeprecated, visitEnclosingMethod, visitExceptionTable, visitInnerClass, visitInnerClasses, visitLineNumber, visitLineNumberTable, visitLocalVariable, visitLocalVariableTable, visitLocalVariableTypeTable, visitMethodParameter, visitMethodParameters, visitModule, visitModuleExports, visitModuleMainClass, visitModuleOpens, visitModulePackages, visitModuleProvides, visitModuleRequires, visitNestHost, visitNestMembers, visitParameterAnnotation, visitParameterAnnotationEntry, visitPermittedSubclasses, visitSignature, visitSourceFile, visitSynthetic, visitUnknown
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.bcel.classfile.Visitor
visitRecord, visitRecordComponent
-
-
-
-
Method Detail
-
main
public static void main(java.lang.String[] argv) throws java.lang.Exception
Default main method.- Parameters:
argv- command line arguments.- Throws:
java.lang.Exception- Thrown if an error occurs.
-
printFlags
public static java.lang.String printFlags(int flags, BCELifier.FLAGS location)
Return a string with the flag settings- Parameters:
flags- The flags field to interpret.location- The item type.- Returns:
- The formatted string.
- Since:
- 6.0 made public
-
start
public void start()
Start Java code generation
-
visitField
public void visitField(Field field)
Description copied from interface:VisitorVisits a Field.- Specified by:
visitFieldin interfaceVisitor- Overrides:
visitFieldin classEmptyVisitor- Parameters:
field- The field.
-
visitJavaClass
public void visitJavaClass(JavaClass clazz)
Description copied from interface:VisitorVisits a JavaClass.- Specified by:
visitJavaClassin interfaceVisitor- Overrides:
visitJavaClassin classEmptyVisitor- Parameters:
clazz- The class.
-
visitMethod
public void visitMethod(Method method)
Description copied from interface:VisitorVisits a Method.- Specified by:
visitMethodin interfaceVisitor- Overrides:
visitMethodin classEmptyVisitor- Parameters:
method- The method.
-
visitStackMap
public void visitStackMap(StackMap stackMap)
Description copied from interface:VisitorVisits a StackMap attribute.- Specified by:
visitStackMapin interfaceVisitor- Overrides:
visitStackMapin classEmptyVisitor- Parameters:
stackMap- The attribute.
-
visitStackMapEntry
public void visitStackMapEntry(StackMapEntry stackMapEntry)
Description copied from interface:VisitorVisits a StackMapEntry.- Specified by:
visitStackMapEntryin interfaceVisitor- Overrides:
visitStackMapEntryin classEmptyVisitor- Parameters:
stackMapEntry- The entry.
-
visitStackMapType
public void visitStackMapType(StackMapType stackMapType)
Visits aStackMapTypeobject.- Specified by:
visitStackMapTypein interfaceVisitor- Overrides:
visitStackMapTypein classEmptyVisitor- Parameters:
stackMapType- object to visit.- Since:
- 6.7.1
-
-