public class com.sun.tools.javac.api.ClientCodeWrapper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.api.ClientCodeWrapper
  super_class: java.lang.Object
{
  java.util.Map<java.lang.Class<?>, java.lang.Boolean> trustedClasses;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Boolean;>;

  public static com.sun.tools.javac.api.ClientCodeWrapper instance(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/api/ClientCodeWrapper;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.util.Context context
         0: .line 102
            aload 0 /* context */
            ldc Lcom/sun/tools/javac/api/ClientCodeWrapper;
            invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.sun.tools.javac.api.ClientCodeWrapper
            astore 1 /* instance */
        start local 1 // com.sun.tools.javac.api.ClientCodeWrapper instance
         1: .line 103
            aload 1 /* instance */
            ifnonnull 3
         2: .line 104
            new com.sun.tools.javac.api.ClientCodeWrapper
            dup
            aload 0 /* context */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper.<init>:(Lcom/sun/tools/javac/util/Context;)V
            astore 1 /* instance */
         3: .line 105
      StackMap locals: com.sun.tools.javac.api.ClientCodeWrapper
      StackMap stack:
            aload 1 /* instance */
            areturn
        end local 1 // com.sun.tools.javac.api.ClientCodeWrapper instance
        end local 0 // com.sun.tools.javac.util.Context context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   context  Lcom/sun/tools/javac/util/Context;
            1    4     1  instance  Lcom/sun/tools/javac/api/ClientCodeWrapper;
    MethodParameters:
         Name  Flags
      context  

  protected void <init>(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // com.sun.tools.javac.util.Context context
         0: .line 114
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 115
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.tools.javac.api.ClientCodeWrapper.trustedClasses:Ljava/util/Map;
         2: .line 116
            return
        end local 1 // com.sun.tools.javac.util.Context context
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1  context  Lcom/sun/tools/javac/util/Context;
    MethodParameters:
         Name  Flags
      context  

  public javax.tools.JavaFileManager wrap(javax.tools.JavaFileManager);
    descriptor: (Ljavax/tools/JavaFileManager;)Ljavax/tools/JavaFileManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.JavaFileManager fm
         0: .line 119
            aload 0 /* this */
            aload 1 /* fm */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.isTrusted:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 120
            aload 1 /* fm */
            areturn
         2: .line 121
      StackMap locals:
      StackMap stack:
            aload 1 /* fm */
            instanceof javax.tools.StandardJavaFileManager
            ifeq 4
         3: .line 122
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedStandardJavaFileManager
            dup
            aload 0 /* this */
            aload 1 /* fm */
            checkcast javax.tools.StandardJavaFileManager
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedStandardJavaFileManager.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Ljavax/tools/StandardJavaFileManager;)V
            areturn
         4: .line 123
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager
            dup
            aload 0 /* this */
            aload 1 /* fm */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Ljavax/tools/JavaFileManager;)V
            areturn
        end local 1 // javax.tools.JavaFileManager fm
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    5     1    fm  Ljavax/tools/JavaFileManager;
    MethodParameters:
      Name  Flags
      fm    

  public javax.tools.FileObject wrap(javax.tools.FileObject);
    descriptor: (Ljavax/tools/FileObject;)Ljavax/tools/FileObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.FileObject fo
         0: .line 127
            aload 1 /* fo */
            ifnull 1
            aload 0 /* this */
            aload 1 /* fo */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.isTrusted:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 128
      StackMap locals:
      StackMap stack:
            aload 1 /* fo */
            areturn
         2: .line 129
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject
            dup
            aload 0 /* this */
            aload 1 /* fo */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Ljavax/tools/FileObject;)V
            areturn
        end local 1 // javax.tools.FileObject fo
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    fo  Ljavax/tools/FileObject;
    MethodParameters:
      Name  Flags
      fo    

  javax.tools.FileObject unwrap(javax.tools.FileObject);
    descriptor: (Ljavax/tools/FileObject;)Ljavax/tools/FileObject;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.FileObject fo
         0: .line 133
            aload 1 /* fo */
            instanceof com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject
            ifeq 2
         1: .line 134
            aload 1 /* fo */
            checkcast com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject
            getfield com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject.clientFileObject:Ljavax/tools/FileObject;
            areturn
         2: .line 136
      StackMap locals:
      StackMap stack:
            aload 1 /* fo */
            areturn
        end local 1 // javax.tools.FileObject fo
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    fo  Ljavax/tools/FileObject;
    MethodParameters:
      Name  Flags
      fo    

  public javax.tools.JavaFileObject wrap(javax.tools.JavaFileObject);
    descriptor: (Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.JavaFileObject fo
         0: .line 140
            aload 1 /* fo */
            ifnull 1
            aload 0 /* this */
            aload 1 /* fo */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.isTrusted:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 141
      StackMap locals:
      StackMap stack:
            aload 1 /* fo */
            areturn
         2: .line 142
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject
            dup
            aload 0 /* this */
            aload 1 /* fo */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Ljavax/tools/JavaFileObject;)V
            areturn
        end local 1 // javax.tools.JavaFileObject fo
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    fo  Ljavax/tools/JavaFileObject;
    MethodParameters:
      Name  Flags
      fo    

  public java.lang.Iterable<javax.tools.JavaFileObject> wrapJavaFileObjects(java.lang.Iterable<? extends javax.tools.JavaFileObject>);
    descriptor: (Ljava/lang/Iterable;)Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // java.lang.Iterable list
         0: .line 146
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* wrapped */
        start local 2 // java.util.List wrapped
         1: .line 147
            aload 1 /* list */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: com.sun.tools.javac.api.ClientCodeWrapper java.lang.Iterable java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.tools.JavaFileObject
            astore 3 /* fo */
        start local 3 // javax.tools.JavaFileObject fo
         3: .line 148
            aload 2 /* wrapped */
            aload 0 /* this */
            aload 3 /* fo */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.wrap:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // javax.tools.JavaFileObject fo
         4: .line 147
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 149
            aload 2 /* wrapped */
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 2 // java.util.List wrapped
        end local 1 // java.lang.Iterable list
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    6     1     list  Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;
            1    6     2  wrapped  Ljava/util/List<Ljavax/tools/JavaFileObject;>;
            3    4     3       fo  Ljavax/tools/JavaFileObject;
    Signature: (Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;)Ljava/lang/Iterable<Ljavax/tools/JavaFileObject;>;
    MethodParameters:
      Name  Flags
      list  

  javax.tools.JavaFileObject unwrap(javax.tools.JavaFileObject);
    descriptor: (Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.JavaFileObject fo
         0: .line 153
            aload 1 /* fo */
            instanceof com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject
            ifeq 2
         1: .line 154
            aload 1 /* fo */
            checkcast com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject
            getfield com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject.clientFileObject:Ljavax/tools/FileObject;
            checkcast javax.tools.JavaFileObject
            areturn
         2: .line 156
      StackMap locals:
      StackMap stack:
            aload 1 /* fo */
            areturn
        end local 1 // javax.tools.JavaFileObject fo
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    fo  Ljavax/tools/JavaFileObject;
    MethodParameters:
      Name  Flags
      fo    

  public <T> javax.tools.DiagnosticListener<T> wrap(javax.tools.DiagnosticListener<T>);
    descriptor: (Ljavax/tools/DiagnosticListener;)Ljavax/tools/DiagnosticListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.DiagnosticListener dl
         0: .line 160
            aload 0 /* this */
            aload 1 /* dl */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.isTrusted:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 161
            aload 1 /* dl */
            areturn
         2: .line 162
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedDiagnosticListener
            dup
            aload 0 /* this */
            aload 1 /* dl */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedDiagnosticListener.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Ljavax/tools/DiagnosticListener;)V
            areturn
        end local 1 // javax.tools.DiagnosticListener dl
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    dl  Ljavax/tools/DiagnosticListener<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljavax/tools/DiagnosticListener<TT;>;)Ljavax/tools/DiagnosticListener<TT;>;
    MethodParameters:
      Name  Flags
      dl    

  com.sun.source.util.TaskListener wrap(com.sun.source.util.TaskListener);
    descriptor: (Lcom/sun/source/util/TaskListener;)Lcom/sun/source/util/TaskListener;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // com.sun.source.util.TaskListener tl
         0: .line 166
            aload 0 /* this */
            aload 1 /* tl */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.isTrusted:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 167
            aload 1 /* tl */
            areturn
         2: .line 168
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener
            dup
            aload 0 /* this */
            aload 1 /* tl */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Lcom/sun/source/util/TaskListener;)V
            areturn
        end local 1 // com.sun.source.util.TaskListener tl
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1    tl  Lcom/sun/source/util/TaskListener;
    MethodParameters:
      Name  Flags
      tl    

  com.sun.source.util.TaskListener unwrap(com.sun.source.util.TaskListener);
    descriptor: (Lcom/sun/source/util/TaskListener;)Lcom/sun/source/util/TaskListener;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // com.sun.source.util.TaskListener l
         0: .line 172
            aload 1 /* l */
            instanceof com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener
            ifeq 2
         1: .line 173
            aload 1 /* l */
            checkcast com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener
            getfield com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener.clientTaskListener:Lcom/sun/source/util/TaskListener;
            areturn
         2: .line 175
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            areturn
        end local 1 // com.sun.source.util.TaskListener l
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    3     1     l  Lcom/sun/source/util/TaskListener;
    MethodParameters:
      Name  Flags
      l     

  java.util.Collection<com.sun.source.util.TaskListener> unwrap(java.util.Collection<? extends com.sun.source.util.TaskListener>);
    descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // java.util.Collection listeners
         0: .line 179
            new java.util.ArrayList
            dup
            aload 1 /* listeners */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* c */
        start local 2 // java.util.Collection c
         1: .line 180
            aload 1 /* listeners */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 4
      StackMap locals: com.sun.tools.javac.api.ClientCodeWrapper java.util.Collection java.util.Collection top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.source.util.TaskListener
            astore 3 /* l */
        start local 3 // com.sun.source.util.TaskListener l
         3: .line 181
            aload 2 /* c */
            aload 0 /* this */
            aload 3 /* l */
            invokevirtual com.sun.tools.javac.api.ClientCodeWrapper.unwrap:(Lcom/sun/source/util/TaskListener;)Lcom/sun/source/util/TaskListener;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // com.sun.source.util.TaskListener l
         4: .line 180
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 182
            aload 2 /* c */
            areturn
        end local 2 // java.util.Collection c
        end local 1 // java.util.Collection listeners
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    6     1  listeners  Ljava/util/Collection<+Lcom/sun/source/util/TaskListener;>;
            1    6     2          c  Ljava/util/Collection<Lcom/sun/source/util/TaskListener;>;
            3    4     3          l  Lcom/sun/source/util/TaskListener;
    Signature: (Ljava/util/Collection<+Lcom/sun/source/util/TaskListener;>;)Ljava/util/Collection<Lcom/sun/source/util/TaskListener;>;
    MethodParameters:
           Name  Flags
      listeners  

  private <T> javax.tools.Diagnostic<T> unwrap(javax.tools.Diagnostic<T>);
    descriptor: (Ljavax/tools/Diagnostic;)Ljavax/tools/Diagnostic;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // javax.tools.Diagnostic diagnostic
         0: .line 187
            aload 1 /* diagnostic */
            instanceof com.sun.tools.javac.util.JCDiagnostic
            ifeq 3
         1: .line 188
            aload 1 /* diagnostic */
            checkcast com.sun.tools.javac.util.JCDiagnostic
            astore 2 /* d */
        start local 2 // com.sun.tools.javac.util.JCDiagnostic d
         2: .line 189
            new com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper
            dup
            aload 0 /* this */
            aload 2 /* d */
            invokespecial com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.<init>:(Lcom/sun/tools/javac/api/ClientCodeWrapper;Lcom/sun/tools/javac/util/JCDiagnostic;)V
            areturn
        end local 2 // com.sun.tools.javac.util.JCDiagnostic d
         3: .line 191
      StackMap locals:
      StackMap stack:
            aload 1 /* diagnostic */
            areturn
        end local 1 // javax.tools.Diagnostic diagnostic
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    4     1  diagnostic  Ljavax/tools/Diagnostic<TT;>;
            2    3     2           d  Lcom/sun/tools/javac/util/JCDiagnostic;
    Signature: <T:Ljava/lang/Object;>(Ljavax/tools/Diagnostic<TT;>;)Ljavax/tools/Diagnostic<TT;>;
    MethodParameters:
            Name  Flags
      diagnostic  final

  protected boolean isTrusted(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // java.lang.Object o
         0: .line 196
            aload 1 /* o */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 2 /* c */
        start local 2 // java.lang.Class c
         1: .line 197
            aload 0 /* this */
            getfield com.sun.tools.javac.api.ClientCodeWrapper.trustedClasses:Ljava/util/Map;
            aload 2 /* c */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 3 /* trusted */
        start local 3 // java.lang.Boolean trusted
         2: .line 198
            aload 3 /* trusted */
            ifnonnull 9
         3: .line 199
            aload 2 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "com.sun.tools.javac."
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 6
         4: .line 200
            aload 2 /* c */
            ldc Lcom/sun/tools/javac/api/ClientCodeWrapper$Trusted;
            invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifne 6
         5: .line 199
            iconst_0
            goto 7
      StackMap locals: java.lang.Class java.lang.Boolean
      StackMap stack:
         6: iconst_1
      StackMap locals:
      StackMap stack: int
         7: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 3 /* trusted */
         8: .line 201
            aload 0 /* this */
            getfield com.sun.tools.javac.api.ClientCodeWrapper.trustedClasses:Ljava/util/Map;
            aload 2 /* c */
            aload 3 /* trusted */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 203
      StackMap locals:
      StackMap stack:
            aload 3 /* trusted */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 3 // java.lang.Boolean trusted
        end local 2 // java.lang.Class c
        end local 1 // java.lang.Object o
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0   10     1        o  Ljava/lang/Object;
            1   10     2        c  Ljava/lang/Class<*>;
            2   10     3  trusted  Ljava/lang/Boolean;
    MethodParameters:
      Name  Flags
      o     

  private java.lang.String wrappedToString(java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
        start local 1 // java.lang.Class wrapperClass
        start local 2 // java.lang.Object wrapped
         0: .line 207
            new java.lang.StringBuilder
            dup
            aload 1 /* wrapperClass */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* wrapped */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.Object wrapped
        end local 1 // java.lang.Class wrapperClass
        end local 0 // com.sun.tools.javac.api.ClientCodeWrapper this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/tools/javac/api/ClientCodeWrapper;
            0    1     1  wrapperClass  Ljava/lang/Class<*>;
            0    1     2       wrapped  Ljava/lang/Object;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)Ljava/lang/String;
    MethodParameters:
              Name  Flags
      wrapperClass  
      wrapped       
}
SourceFile: "ClientCodeWrapper.java"
NestMembers:
  com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper  com.sun.tools.javac.api.ClientCodeWrapper$Trusted  com.sun.tools.javac.api.ClientCodeWrapper$WrappedDiagnosticListener  com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject  com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager  com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject  com.sun.tools.javac.api.ClientCodeWrapper$WrappedStandardJavaFileManager  com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener
InnerClasses:
  public DiagnosticSourceUnwrapper = com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper of com.sun.tools.javac.api.ClientCodeWrapper
  public abstract Trusted = com.sun.tools.javac.api.ClientCodeWrapper$Trusted of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedDiagnosticListener = com.sun.tools.javac.api.ClientCodeWrapper$WrappedDiagnosticListener of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedFileObject = com.sun.tools.javac.api.ClientCodeWrapper$WrappedFileObject of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedJavaFileManager = com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedJavaFileObject = com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileObject of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedStandardJavaFileManager = com.sun.tools.javac.api.ClientCodeWrapper$WrappedStandardJavaFileManager of com.sun.tools.javac.api.ClientCodeWrapper
  protected WrappedTaskListener = com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener of com.sun.tools.javac.api.ClientCodeWrapper