final class com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation extends com.oracle.svm.core.thread.JavaVMOperation
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation
  super_class: com.oracle.svm.core.thread.JavaVMOperation
{
  private final java.lang.String cause;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.svm.core.genscavenge.HeapVerifier verifier;
    descriptor: Lcom/oracle/svm/core/genscavenge/HeapVerifier;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.svm.core.genscavenge.HeapVerifier$Occasion occasion;
    descriptor: Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean result;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  void <init>(java.lang.String, com.oracle.svm.core.genscavenge.HeapVerifier, com.oracle.svm.core.genscavenge.HeapVerifier$Occasion);
    descriptor: (Ljava/lang/String;Lcom/oracle/svm/core/genscavenge/HeapVerifier;Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
        start local 1 // java.lang.String cause
        start local 2 // com.oracle.svm.core.genscavenge.HeapVerifier verifier
        start local 3 // com.oracle.svm.core.genscavenge.HeapVerifier$Occasion occasion
         0: .line 142
            aload 0 /* this */
            ldc "HeapVerification"
            getstatic com.oracle.svm.core.thread.VMOperation$SystemEffect.SAFEPOINT:Lcom/oracle/svm/core/thread/VMOperation$SystemEffect;
            invokespecial com.oracle.svm.core.thread.JavaVMOperation.<init>:(Ljava/lang/String;Lcom/oracle/svm/core/thread/VMOperation$SystemEffect;)V
         1: .line 143
            aload 0 /* this */
            aload 1 /* cause */
            putfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.cause:Ljava/lang/String;
         2: .line 144
            aload 0 /* this */
            aload 2 /* verifier */
            putfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.verifier:Lcom/oracle/svm/core/genscavenge/HeapVerifier;
         3: .line 145
            aload 0 /* this */
            aload 3 /* occasion */
            putfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.occasion:Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;
         4: .line 146
            aload 0 /* this */
            iconst_0
            putfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.result:Z
         5: .line 147
            return
        end local 3 // com.oracle.svm.core.genscavenge.HeapVerifier$Occasion occasion
        end local 2 // com.oracle.svm.core.genscavenge.HeapVerifier verifier
        end local 1 // java.lang.String cause
        end local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/oracle/svm/core/genscavenge/HeapVerifier$VerifyVMOperation;
            0    6     1     cause  Ljava/lang/String;
            0    6     2  verifier  Lcom/oracle/svm/core/genscavenge/HeapVerifier;
            0    6     3  occasion  Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;
    MethodParameters:
          Name  Flags
      cause     
      verifier  
      occasion  

  public void operate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
         0: .line 152
            invokestatic com.oracle.svm.core.genscavenge.HeapImpl.getHeapImpl:()Lcom/oracle/svm/core/genscavenge/HeapImpl;
            invokevirtual com.oracle.svm.core.genscavenge.HeapImpl.getHeapVerifier:()Lcom/oracle/svm/core/genscavenge/HeapVerifier;
            astore 1 /* previousVerifier */
        start local 1 // com.oracle.svm.core.genscavenge.HeapVerifier previousVerifier
         1: .line 153
            invokestatic com.oracle.svm.core.genscavenge.HeapImpl.getHeapImpl:()Lcom/oracle/svm/core/genscavenge/HeapImpl;
            aload 0 /* this */
            getfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.verifier:Lcom/oracle/svm/core/genscavenge/HeapVerifier;
            invokevirtual com.oracle.svm.core.genscavenge.HeapImpl.setHeapVerifier:(Lcom/oracle/svm/core/genscavenge/HeapVerifier;)V
         2: .line 154
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.verifier:Lcom/oracle/svm/core/genscavenge/HeapVerifier;
            aload 0 /* this */
            getfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.cause:Ljava/lang/String;
            aload 0 /* this */
            getfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.occasion:Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;
            invokevirtual com.oracle.svm.core.genscavenge.HeapVerifier.verifyOperation:(Ljava/lang/String;Lcom/oracle/svm/core/genscavenge/HeapVerifier$Occasion;)Z
            putfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.result:Z
         3: .line 155
            invokestatic com.oracle.svm.core.genscavenge.HeapImpl.getHeapImpl:()Lcom/oracle/svm/core/genscavenge/HeapImpl;
            aload 1 /* previousVerifier */
            invokevirtual com.oracle.svm.core.genscavenge.HeapImpl.setHeapVerifier:(Lcom/oracle/svm/core/genscavenge/HeapVerifier;)V
         4: .line 156
            return
        end local 1 // com.oracle.svm.core.genscavenge.HeapVerifier previousVerifier
        end local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Lcom/oracle/svm/core/genscavenge/HeapVerifier$VerifyVMOperation;
            1    5     1  previousVerifier  Lcom/oracle/svm/core/genscavenge/HeapVerifier;
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.RestrictHeapAccess(access = com.oracle.svm.core.annotate.RestrictHeapAccess$Access.NO_ALLOCATION:Lcom/oracle/svm/core/annotate/RestrictHeapAccess$Access;, reason = "Must not allocate while verifying the heap.")

  public boolean getResult();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
         0: .line 159
            aload 0 /* this */
            getfield com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation.result:Z
            ireturn
        end local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/core/genscavenge/HeapVerifier$VerifyVMOperation;
}
SourceFile: "HeapVerifier.java"
NestHost: com.oracle.svm.core.genscavenge.HeapVerifier
InnerClasses:
  public final Access = com.oracle.svm.core.annotate.RestrictHeapAccess$Access of com.oracle.svm.core.annotate.RestrictHeapAccess
  public final Occasion = com.oracle.svm.core.genscavenge.HeapVerifier$Occasion of com.oracle.svm.core.genscavenge.HeapVerifier
  final VerifyVMOperation = com.oracle.svm.core.genscavenge.HeapVerifier$VerifyVMOperation of com.oracle.svm.core.genscavenge.HeapVerifier
  public final SystemEffect = com.oracle.svm.core.thread.VMOperation$SystemEffect of com.oracle.svm.core.thread.VMOperation