Package net.bytebuddy.dynamic.scaffold
Interface TypeWriter.Default.ValidatingClassVisitor.Constraint
- All Known Implementing Classes:
TypeWriter.Default.ValidatingClassVisitor.Constraint.Compound,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForAnnotation,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForClass,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForClassFileVersion,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForInterface,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForPackageType,TypeWriter.Default.ValidatingClassVisitor.Constraint.ForRecord
- Enclosing class:
TypeWriter.Default.ValidatingClassVisitor
protected static interface TypeWriter.Default.ValidatingClassVisitor.Constraint
A constraint for members that are legal for a given type.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classA constraint implementation that summarizes several constraints.static enumRepresents the constraint of an annotation type.static enumRepresents the constraint of a class type.static classRepresents the constraint implied by a class file version.static enumRepresents the constraint of an interface type.static enumRepresents the constraint of a package type.static enumRepresents the constraint of a record type. -
Method Summary
Modifier and TypeMethodDescriptionvoidAsserts the legitimacy of an annotation for the instrumented type.voidAsserts if it is legal to invoke a default method from a type.voidassertDefaultValue(String name) Asserts if a default value is legal for a method.voidAsserts the capability of storing a dynamic value in the constant pool.voidassertField(String name, boolean isPublic, boolean isStatic, boolean isFinal, boolean isGeneric) Asserts a field for being valid.voidAsserts the capability to store a method handle in the class's constant pool.voidAsserts the capability to invoke a method dynamically.voidassertMethod(String name, boolean isAbstract, boolean isPublic, boolean isPrivate, boolean isStatic, boolean isVirtual, boolean isConstructor, boolean isDefaultValueIncompatible, boolean isGeneric) Asserts a method for being valid.voidAsserts the capability to store a method type constant in the class's constant pool.voidAsserts the capability of storing nest mate information.voidAsserts the presence of a permitted subclass.voidAsserts the presence of a record component.voidAsserts the capability of executing a subroutine.voidassertType(int modifier, boolean definesInterfaces, boolean isGeneric) Asserts if the type can legally represent a package description.voidAsserts the legitimacy of a type annotation for the instrumented type.voidAsserts the capability to store a type constant in the class's constant pool.
-
Method Details
-
assertType
void assertType(int modifier, boolean definesInterfaces, boolean isGeneric) Asserts if the type can legally represent a package description.- Parameters:
modifier- The modifier that is to be written to the type.definesInterfaces-trueif this type implements at least one interface.isGeneric-trueif this type defines a generic type signature.
-
assertField
void assertField(String name, boolean isPublic, boolean isStatic, boolean isFinal, boolean isGeneric) Asserts a field for being valid.- Parameters:
name- The name of the field.isPublic-trueif this field is public.isStatic-trueif this field is static.isFinal-trueif this field is final.isGeneric-trueif this field defines a generic signature.
-
assertMethod
void assertMethod(String name, boolean isAbstract, boolean isPublic, boolean isPrivate, boolean isStatic, boolean isVirtual, boolean isConstructor, boolean isDefaultValueIncompatible, boolean isGeneric) Asserts a method for being valid.- Parameters:
name- The name of the method.isAbstract-trueif the method is abstract.isPublic-trueif this method is public.isPrivate-trueif this method is private.isStatic-trueif this method is static.isVirtual-trueif this method is virtual.isConstructor-trueif this method is a constructor.isDefaultValueIncompatible-trueif a method's signature cannot describe an annotation property method.isGeneric-trueif this method defines a generic signature.
-
assertAnnotation
void assertAnnotation()Asserts the legitimacy of an annotation for the instrumented type. -
assertTypeAnnotation
void assertTypeAnnotation()Asserts the legitimacy of a type annotation for the instrumented type. -
assertDefaultValue
Asserts if a default value is legal for a method.- Parameters:
name- The name of the method.
-
assertDefaultMethodCall
void assertDefaultMethodCall()Asserts if it is legal to invoke a default method from a type. -
assertTypeInConstantPool
void assertTypeInConstantPool()Asserts the capability to store a type constant in the class's constant pool. -
assertMethodTypeInConstantPool
void assertMethodTypeInConstantPool()Asserts the capability to store a method type constant in the class's constant pool. -
assertHandleInConstantPool
void assertHandleInConstantPool()Asserts the capability to store a method handle in the class's constant pool. -
assertInvokeDynamic
void assertInvokeDynamic()Asserts the capability to invoke a method dynamically. -
assertSubRoutine
void assertSubRoutine()Asserts the capability of executing a subroutine. -
assertDynamicValueInConstantPool
void assertDynamicValueInConstantPool()Asserts the capability of storing a dynamic value in the constant pool. -
assertNestMate
void assertNestMate()Asserts the capability of storing nest mate information. -
assertRecord
void assertRecord()Asserts the presence of a record component. -
assertPermittedSubclass
void assertPermittedSubclass()Asserts the presence of a permitted subclass.
-