Class GizmoMemberAccessorImplementor


  • public class GizmoMemberAccessorImplementor
    extends Object
    Generates the bytecode for the MemberAccessor of a particular Member
    • Method Detail

      • defineAccessorFor

        public static void defineAccessorFor​(io.quarkus.gizmo.ClassCreator classCreator,
                                             GizmoMemberDescriptor member,
                                             Class<? extends Annotation> annotationClass)
        Generates the constructor and implementations of MemberAccessor methods for the given MemberDescriptor using the given ClassCreator
        Parameters:
        classCreator - ClassCreator to write output to
        member - Member to generate MemberAccessor methods implementation for
        annotationClass - The annotation it was annotated with (used for error reporting)
      • createAccessorFor

        public static MemberAccessor createAccessorFor​(Member member,
                                                       Class<? extends Annotation> annotationClass)
        Creates a MemberAccessor for a given member, generating the MemberAccessor bytecode if required
        Parameters:
        member - The member to generate a MemberAccessor for
        annotationClass - The annotation it was annotated with (used for error reporting)
        Returns:
        A new MemberAccessor that uses Gizmo generated bytecode. Will generate the bytecode the first type it is called for a member, unless a classloader has been set, in which case no Gizmo code will be generated.