Class InterfaceImplementationGenerator
java.lang.Object
mockit.asm.BaseWriter
mockit.asm.classes.ClassVisitor
mockit.asm.classes.WrappingClassVisitor
mockit.internal.BaseClassModifier
mockit.internal.expectations.mocking.InterfaceImplementationGenerator
-
Field Summary
Fields inherited from class BaseClassModifier
classDesc, methodAccess, methodAnnotationsVisitor, methodDesc, methodName, mw, superClassName, useClassLoadingBridge, VOID_TYPEFields inherited from class WrappingClassVisitor
cwFields inherited from class BaseWriter
annotations, classOrMemberAccess, cp -
Constructor Summary
ConstructorsConstructorDescriptionInterfaceImplementationGenerator(ClassReader cr, Type mockedType, String implementationClassName) -
Method Summary
Modifier and TypeMethodDescriptionvoidVisits the header of the class.visitAnnotation(String desc) Visits an annotation of the class/field/method being visited.voidvisitEnd()Visits the end of the class/field/method being visited.visitField(int access, String name, String desc, String signature, Object value) Visits a field of the class.voidvisitInnerClass(String name, String outerName, String innerName, int access) Visits information about an inner class, which is not necessarily a member of the class being visited.visitMethod(int access, String name, String desc, String signature, String[] exceptions) Visits a method of the class.Methods inherited from class BaseClassModifier
copyOriginalImplementationWithInjectedInterceptionCode, generateCallToInvocationHandler, generateCodeToCreateArrayOfObject, generateCodeToFillArrayElement, generateCodeToFillArrayWithParameterValues, generateCodeToObtainInstanceOfClassLoadingBridge, generateCodeToPassThisOrNullIfStaticMethod, generateDirectCallToHandler, generateDirectCallToHandler, generateEmptyImplementation, generateEmptyImplementation, generateInterceptionCode, generateReturnWithObjectAtTopOfTheStack, setUseClassLoadingBridge, startModifiedMethodVersion, wasModifiedMethods inherited from class WrappingClassVisitor
toByteArrayMethods inherited from class BaseWriter
createMarkerAttributes, getAnnotationsSize, getConstantPoolGeneration, getMarkerAttributeCount, getMarkerAttributesSize, put, put, putAccess, putAnnotations, putMarkerAttributes
-
Constructor Details
-
InterfaceImplementationGenerator
public InterfaceImplementationGenerator(@NonNull ClassReader cr, @NonNull Type mockedType, @NonNull String implementationClassName)
-
-
Method Details
-
visit
Description copied from class:ClassVisitorVisits the header of the class.- Overrides:
visitin classBaseClassModifier- Parameters:
version- the class versionaccess- the class's access flags (seeAccess)name- the internal name of the classadditionalInfo- additional class information
-
visitAnnotation
Description copied from class:BaseWriterVisits an annotation of the class/field/method being visited.- Overrides:
visitAnnotationin classWrappingClassVisitor- Parameters:
desc- the descriptor of the annotation type- Returns:
- a visitor to visit the annotation values, or
nullif this visitor is not interested in visiting the annotation
-
visitInnerClass
Description copied from class:ClassVisitorVisits information about an inner class, which is not necessarily a member of the class being visited.- Overrides:
visitInnerClassin classWrappingClassVisitor- Parameters:
name- the internal name of an inner classouterName- the internal name of the class to which the inner class belongs;nullfor not member classesinnerName- the (simple) name of the inner class inside its enclosing class;nullfor anonymous inner classesaccess- the access flags of the inner class as originally declared in the enclosing class
-
visitField
@Nullable public FieldVisitor visitField(int access, @NonNull String name, @NonNull String desc, @Nullable String signature, @Nullable Object value) Description copied from class:ClassVisitorVisits a field of the class.- Overrides:
visitFieldin classWrappingClassVisitor- Parameters:
access- the field's access flags (seeAccess)name- the field's namedesc- the field's descriptor (seeJavaType)signature- the field's signature;nullwhen the field's type does not use generic typesvalue- the field's initial value;nullwhen the field does not have an initial value; otherwise, must be anInteger, aFloat, aLong, aDoubleor aString(forint,float,longorStringfields respectively); this parameter is only used for static fields; its value is ignored for non static fields, which must be initialized through bytecode instructions in constructors or methods- Returns:
- a visitor to visit field annotations and attributes, or
nullif this class visitor is not interested in visiting these annotations and attributes
-
visitMethod
@Nullable public MethodVisitor visitMethod(int access, @NonNull String name, @NonNull String desc, @Nullable String signature, @Nullable String[] exceptions) Description copied from class:ClassVisitorVisits a method of the class. This method must return a newMethodVisitorinstance (ornull) each time it is called, i.e., it should not return a previously returned visitor.- Overrides:
visitMethodin classWrappingClassVisitor- Parameters:
access- the method's access flags (seeOpcodes)name- the method's namedesc- the method's descriptor (seeJavaType)signature- the method's signature,nullif the method parameters, return type and exceptions do not use generic typesexceptions- the internal names of the method's exception classes- Returns:
- an object to visit the byte code of the method, or
nullif this class visitor is not interested in visiting the code of this method
-
visitEnd
public void visitEnd()Description copied from class:BaseWriterVisits the end of the class/field/method being visited. This method, which is the last one to be called, is used to inform the visitor that all the annotations and attributes of the class/field/method have been visited.- Overrides:
visitEndin classBaseWriter
-