public class jdk.jshell.TypeDeclSnippet extends jdk.jshell.DeclarationSnippet
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.jshell.TypeDeclSnippet
  super_class: jdk.jshell.DeclarationSnippet
{
  void <init>(jdk.jshell.Key$TypeDeclKey, java.lang.String, jdk.jshell.Wrap, java.lang.String, jdk.jshell.Snippet$SubKind, jdk.jshell.Wrap, java.util.Collection<java.lang.String>, java.util.Collection<java.lang.String>, jdk.jshell.DiagList);
    descriptor: (Ljdk/jshell/Key$TypeDeclKey;Ljava/lang/String;Ljdk/jshell/Wrap;Ljava/lang/String;Ljdk/jshell/Snippet$SubKind;Ljdk/jshell/Wrap;Ljava/util/Collection;Ljava/util/Collection;Ljdk/jshell/DiagList;)V
    flags: (0x0000) 
    Code:
      stack=10, locals=10, args_size=10
        start local 0 // jdk.jshell.TypeDeclSnippet this
        start local 1 // jdk.jshell.Key$TypeDeclKey key
        start local 2 // java.lang.String userSource
        start local 3 // jdk.jshell.Wrap guts
        start local 4 // java.lang.String unitName
        start local 5 // jdk.jshell.Snippet$SubKind subkind
        start local 6 // jdk.jshell.Wrap corralled
        start local 7 // java.util.Collection declareReferences
        start local 8 // java.util.Collection bodyReferences
        start local 9 // jdk.jshell.DiagList syntheticDiags
         0: .line 49
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* userSource */
            aload 3 /* guts */
            aload 4 /* unitName */
            aload 5 /* subkind */
            aload 6 /* corralled */
         1: .line 50
            aload 7 /* declareReferences */
            aload 8 /* bodyReferences */
            aload 9 /* syntheticDiags */
            invokespecial jdk.jshell.DeclarationSnippet.<init>:(Ljdk/jshell/Key$DeclarationKey;Ljava/lang/String;Ljdk/jshell/Wrap;Ljava/lang/String;Ljdk/jshell/Snippet$SubKind;Ljdk/jshell/Wrap;Ljava/util/Collection;Ljava/util/Collection;Ljdk/jshell/DiagList;)V
         2: .line 51
            return
        end local 9 // jdk.jshell.DiagList syntheticDiags
        end local 8 // java.util.Collection bodyReferences
        end local 7 // java.util.Collection declareReferences
        end local 6 // jdk.jshell.Wrap corralled
        end local 5 // jdk.jshell.Snippet$SubKind subkind
        end local 4 // java.lang.String unitName
        end local 3 // jdk.jshell.Wrap guts
        end local 2 // java.lang.String userSource
        end local 1 // jdk.jshell.Key$TypeDeclKey key
        end local 0 // jdk.jshell.TypeDeclSnippet this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Ljdk/jshell/TypeDeclSnippet;
            0    3     1                key  Ljdk/jshell/Key$TypeDeclKey;
            0    3     2         userSource  Ljava/lang/String;
            0    3     3               guts  Ljdk/jshell/Wrap;
            0    3     4           unitName  Ljava/lang/String;
            0    3     5            subkind  Ljdk/jshell/Snippet$SubKind;
            0    3     6          corralled  Ljdk/jshell/Wrap;
            0    3     7  declareReferences  Ljava/util/Collection<Ljava/lang/String;>;
            0    3     8     bodyReferences  Ljava/util/Collection<Ljava/lang/String;>;
            0    3     9     syntheticDiags  Ljdk/jshell/DiagList;
    Signature: (Ljdk/jshell/Key$TypeDeclKey;Ljava/lang/String;Ljdk/jshell/Wrap;Ljava/lang/String;Ljdk/jshell/Snippet$SubKind;Ljdk/jshell/Wrap;Ljava/util/Collection<Ljava/lang/String;>;Ljava/util/Collection<Ljava/lang/String;>;Ljdk/jshell/DiagList;)V
    MethodParameters:
                   Name  Flags
      key                
      userSource         
      guts               
      unitName           
      subkind            
      corralled          
      declareReferences  
      bodyReferences     
      syntheticDiags     

  jdk.jshell.Key$TypeDeclKey key();
    descriptor: ()Ljdk/jshell/Key$TypeDeclKey;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.TypeDeclSnippet this
         0: .line 57
            aload 0 /* this */
            invokespecial jdk.jshell.DeclarationSnippet.key:()Ljdk/jshell/Key;
            checkcast jdk.jshell.Key$TypeDeclKey
            areturn
        end local 0 // jdk.jshell.TypeDeclSnippet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/jshell/TypeDeclSnippet;

  jdk.jshell.Key key();
    descriptor: ()Ljdk/jshell/Key;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual jdk.jshell.TypeDeclSnippet.key:()Ljdk/jshell/Key$TypeDeclKey;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "TypeDeclSnippet.java"
InnerClasses:
  abstract DeclarationKey = jdk.jshell.Key$DeclarationKey of jdk.jshell.Key
  TypeDeclKey = jdk.jshell.Key$TypeDeclKey of jdk.jshell.Key
  public final SubKind = jdk.jshell.Snippet$SubKind of jdk.jshell.Snippet