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 class
A constraint implementation that summarizes several constraints.static enum
Represents the constraint of an annotation type.static enum
Represents the constraint of a class type.static class
Represents the constraint implied by a class file version.static enum
Represents the constraint of an interface type.static enum
Represents the constraint of a package type.static enum
Represents the constraint of a record type. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Asserts the legitimacy of an annotation for the instrumented type.void
Asserts if it is legal to invoke a default method from a type.void
assertDefaultValue
(String name) Asserts if a default value is legal for a method.void
Asserts the capability of storing a dynamic value in the constant pool.void
assertField
(String name, boolean isPublic, boolean isStatic, boolean isFinal, boolean isGeneric) Asserts a field for being valid.void
Asserts the capability to store a method handle in the class's constant pool.void
Asserts the capability to invoke a method dynamically.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.void
Asserts the capability to store a method type constant in the class's constant pool.void
Asserts the capability of storing nest mate information.void
Asserts the presence of a permitted subclass.void
Asserts the presence of a record component.void
Asserts the capability of executing a subroutine.void
assertType
(int modifier, boolean definesInterfaces, boolean isGeneric) Asserts if the type can legally represent a package description.void
Asserts the legitimacy of a type annotation for the instrumented type.void
Asserts 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
-true
if this type implements at least one interface.isGeneric
-true
if 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
-true
if this field is public.isStatic
-true
if this field is static.isFinal
-true
if this field is final.isGeneric
-true
if 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
-true
if the method is abstract.isPublic
-true
if this method is public.isPrivate
-true
if this method is private.isStatic
-true
if this method is static.isVirtual
-true
if this method is virtual.isConstructor
-true
if this method is a constructor.isDefaultValueIncompatible
-true
if a method's signature cannot describe an annotation property method.isGeneric
-true
if 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.
-