Class EqualsMethod.NullValueGuard.UsingJump.AfterInstruction

    • Constructor Detail

      • AfterInstruction

        protected AfterInstruction​(MethodDescription instrumentedMethod,
                                   org.objectweb.asm.Label firstValueNull,
                                   org.objectweb.asm.Label secondValueNull,
                                   org.objectweb.asm.Label endOfBlock)
        Creates an instruction to execute after an equality check.
        Parameters:
        instrumentedMethod - The instrumented method.
        firstValueNull - The label to jump to if the first value is null whereas the second value is not null.
        secondValueNull - The label to jump to if the second value is null.
        endOfBlock - A label indicating the end of the null-guarding block.
    • Method Detail

      • isValid

        public boolean isValid()
        Description copied from interface: StackManipulation
        Determines if this stack manipulation is valid.
        Specified by:
        isValid in interface StackManipulation
        Returns:
        If false, this manipulation cannot be applied and should throw an exception.
      • apply

        public StackManipulation.Size apply​(org.objectweb.asm.MethodVisitor methodVisitor,
                                            Implementation.Context implementationContext)
        Description copied from interface: StackManipulation
        Applies the stack manipulation that is described by this instance.
        Specified by:
        apply in interface StackManipulation
        Parameters:
        methodVisitor - The method visitor used to write the method implementation to.
        implementationContext - The context of the current implementation.
        Returns:
        The changes to the size of the operand stack that are implied by this stack manipulation.