@Override public void visitFieldInsn(int opcode, String owner, String name, String desc) { if (opcode == Opcodes.PUTFIELD && parameterLoadState == ParameterLoadState.LOADED_THIS_AND_PARAMETER && owner.equals(slashedClassName) && name.startsWith("this$")) { // the field that has name starts with "this$" is generated for non-static inner class // https://sourceforge.net/p/findbugs/bugs/1015/ mBuilder.setVariableIsSynthetic(parameterForLoadState); } fieldInstructionCount++; if (isAccessMethod && this.accessOwner == null) { this.accessOwner = owner; this.accessName = name; this.accessDesc = desc; this.accessIsStatic = opcode == Opcodes.GETSTATIC || opcode == Opcodes.PUTSTATIC; this.accessForField = true; } visitSomeInsn(); }
@Override public void visitFieldInsn(int opcode, String owner, String name, String desc) { if (opcode == Opcodes.PUTFIELD && parameterLoadState == ParameterLoadState.LOADED_THIS_AND_PARAMETER && owner.equals(slashedClassName) && name.startsWith("this$")) { mBuilder.setVariableIsSynthetic(parameterForLoadState); } fieldInstructionCount++; if (isAccessMethod && this.accessOwner == null) { this.accessOwner = owner; this.accessName = name; this.accessDesc = desc; this.accessIsStatic = opcode == Opcodes.GETSTATIC || opcode == Opcodes.PUTSTATIC; this.accessForField = true; } visitSomeInsn(); }