@HashCodeAndEqualsPlugin.Enhance public static class EqualsMethod.NullValueGuard.UsingJump extends java.lang.Object implements EqualsMethod.NullValueGuard
null but returns if
the invoked instance's field value is null but not the compared instance's value.| Modifier and Type | Class and Description |
|---|---|
protected class |
EqualsMethod.NullValueGuard.UsingJump.AfterInstruction
The stack manipulation to apply after the equality computation.
|
protected class |
EqualsMethod.NullValueGuard.UsingJump.BeforeInstruction
The stack manipulation to apply before the equality computation.
|
EqualsMethod.NullValueGuard.NoOp, EqualsMethod.NullValueGuard.UsingJump| Modifier and Type | Field and Description |
|---|---|
private static java.lang.Object[] |
EMPTY
An empty array.
|
private org.objectweb.asm.Label |
endOfBlock
A label indicating the end of the null-guarding block.
|
private org.objectweb.asm.Label |
firstValueNull
The label to jump to if the first value is
null whereas the second value is not null. |
private MethodDescription |
instrumentedMethod
The instrumented method.
|
private static java.lang.Object[] |
REFERENCE
An array containing a single reference value.
|
private org.objectweb.asm.Label |
secondValueNull
The label to jump to if the second value is
null. |
| Modifier | Constructor and Description |
|---|---|
protected |
UsingJump(MethodDescription instrumentedMethod)
Creates a new null value guard using a jump instruction for
null values. |
| Modifier and Type | Method and Description |
|---|---|
StackManipulation |
after()
Returns a stack manipulation to apply after computing equality.
|
StackManipulation |
before()
Returns a stack manipulation to apply before computing equality.
|
int |
getRequiredVariablePadding()
Returns the required padding for the local variable array to apply this guard.
|
private static final java.lang.Object[] EMPTY
private static final java.lang.Object[] REFERENCE
private final MethodDescription instrumentedMethod
private final org.objectweb.asm.Label firstValueNull
null whereas the second value is not null.private final org.objectweb.asm.Label secondValueNull
null.private final org.objectweb.asm.Label endOfBlock
protected UsingJump(MethodDescription instrumentedMethod)
null values.instrumentedMethod - The instrumented method.public StackManipulation before()
before in interface EqualsMethod.NullValueGuardpublic StackManipulation after()
after in interface EqualsMethod.NullValueGuardpublic int getRequiredVariablePadding()
getRequiredVariablePadding in interface EqualsMethod.NullValueGuard