Class ReflectiveInvocation

java.lang.Object
edu.umd.cs.findbugs.detect.ReflectiveInvocation

class ReflectiveInvocation extends Object
A single invocation of a reflective field accessor (MethodHandle, VarHandle or AtomicFieldUpdater). The ReflectiveInvocation.Kind passed to create(ReflectiveInvocation.Kind, XField, String) selects the rules used to decide whether the called method actually accesses a field and, if so, which access type it implies.

For a MethodHandle the access type is fixed at the accessor's declaration, so accessType is null here and the accessor's own type is used during resolution. For VarHandle and AtomicFieldUpdater the access type is derived from the invoked method name.