public abstract class com.oracle.js.parser.ir.LiteralNode<T> extends com.oracle.js.parser.ir.Expression
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.js.parser.ir.LiteralNode
  super_class: com.oracle.js.parser.ir.Expression
{
  protected final T value;
    descriptor: Ljava/lang/Object;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: TT;

  protected void <init>(long, int, );
    descriptor: (JILjava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // long token
        start local 3 // int finish
        start local 4 // java.lang.Object value
         0: .line 72
            aload 0 /* this */
            lload 1 /* token */
            iload 3 /* finish */
            invokespecial com.oracle.js.parser.ir.Expression.<init>:(JI)V
         1: .line 73
            aload 0 /* this */
            aload 4 /* value */
            putfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
         2: .line 74
            return
        end local 4 // java.lang.Object value
        end local 3 // int finish
        end local 1 // long token
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    3     1   token  J
            0    3     3  finish  I
            0    3     4   value  TT;
    Signature: (JITT;)V
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final

  protected void <init>(com.oracle.js.parser.ir.LiteralNode<T>);
    descriptor: (Lcom/oracle/js/parser/ir/LiteralNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // com.oracle.js.parser.ir.LiteralNode literalNode
         0: .line 82
            aload 0 /* this */
            aload 1 /* literalNode */
            aload 1 /* literalNode */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            invokespecial com.oracle.js.parser.ir.LiteralNode.<init>:(Lcom/oracle/js/parser/ir/LiteralNode;Ljava/lang/Object;)V
         1: .line 83
            return
        end local 1 // com.oracle.js.parser.ir.LiteralNode literalNode
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    2     1  literalNode  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
    Signature: (Lcom/oracle/js/parser/ir/LiteralNode<TT;>;)V
    MethodParameters:
             Name  Flags
      literalNode  final

  protected void <init>(com.oracle.js.parser.ir.LiteralNode<T>, );
    descriptor: (Lcom/oracle/js/parser/ir/LiteralNode;Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // com.oracle.js.parser.ir.LiteralNode literalNode
        start local 2 // java.lang.Object newValue
         0: .line 92
            aload 0 /* this */
            aload 1 /* literalNode */
            invokespecial com.oracle.js.parser.ir.Expression.<init>:(Lcom/oracle/js/parser/ir/Expression;)V
         1: .line 93
            aload 0 /* this */
            aload 2 /* newValue */
            putfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
         2: .line 94
            return
        end local 2 // java.lang.Object newValue
        end local 1 // com.oracle.js.parser.ir.LiteralNode literalNode
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    3     1  literalNode  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    3     2     newValue  TT;
    Signature: (Lcom/oracle/js/parser/ir/LiteralNode<TT;>;TT;)V
    MethodParameters:
             Name  Flags
      literalNode  final
      newValue     final

  public java.lang.String getString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 102
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;

  public java.lang.Object getObject();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 111
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;

  public boolean isArray();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 120
            iconst_0
            ireturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;

  public java.util.List<com.oracle.js.parser.ir.Expression> getElementExpressions();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 124
            aconst_null
            areturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
    Signature: ()Ljava/util/List<Lcom/oracle/js/parser/ir/Expression;>;

  public boolean isString();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 133
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            instanceof java.lang.String
            ireturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;

  public com.oracle.js.parser.ir.Node accept(com.oracle.js.parser.ir.visitor.NodeVisitor<? extends com.oracle.js.parser.ir.LexicalContext>);
    descriptor: (Lcom/oracle/js/parser/ir/visitor/NodeVisitor;)Lcom/oracle/js/parser/ir/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // com.oracle.js.parser.ir.visitor.NodeVisitor visitor
         0: .line 143
            aload 1 /* visitor */
            aload 0 /* this */
            invokevirtual com.oracle.js.parser.ir.visitor.NodeVisitor.enterLiteralNode:(Lcom/oracle/js/parser/ir/LiteralNode;)Z
            ifeq 2
         1: .line 144
            aload 1 /* visitor */
            aload 0 /* this */
            invokevirtual com.oracle.js.parser.ir.visitor.NodeVisitor.leaveLiteralNode:(Lcom/oracle/js/parser/ir/LiteralNode;)Lcom/oracle/js/parser/ir/Node;
            areturn
         2: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // com.oracle.js.parser.ir.visitor.NodeVisitor visitor
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    3     1  visitor  Lcom/oracle/js/parser/ir/visitor/NodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;>;
    Signature: (Lcom/oracle/js/parser/ir/visitor/NodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;>;)Lcom/oracle/js/parser/ir/Node;
    MethodParameters:
         Name  Flags
      visitor  final

  public <R> R accept(com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor<? extends com.oracle.js.parser.ir.LexicalContext, R>);
    descriptor: (Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor visitor
         0: .line 152
            aload 1 /* visitor */
            aload 0 /* this */
            invokevirtual com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor.enterLiteralNode:(Lcom/oracle/js/parser/ir/LiteralNode;)Ljava/lang/Object;
            areturn
        end local 1 // com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor visitor
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    1     1  visitor  Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;TR;>;
    Signature: <R:Ljava/lang/Object;>(Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;TR;>;)TR;
    MethodParameters:
         Name  Flags
      visitor  

  public void toString(java.lang.StringBuilder, boolean);
    descriptor: (Ljava/lang/StringBuilder;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // boolean printType
         0: .line 157
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            ifnonnull 3
         1: .line 158
            aload 1 /* sb */
            ldc "null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 159
            goto 4
         3: .line 160
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 162
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean printType
        end local 1 // java.lang.StringBuilder sb
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
            0    5     1         sb  Ljava/lang/StringBuilder;
            0    5     2  printType  Z
    MethodParameters:
           Name  Flags
      sb         final
      printType  final

  public final T getValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.js.parser.ir.LiteralNode this
         0: .line 170
            aload 0 /* this */
            getfield com.oracle.js.parser.ir.LiteralNode.value:Ljava/lang/Object;
            areturn
        end local 0 // com.oracle.js.parser.ir.LiteralNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/js/parser/ir/LiteralNode<TT;>;
    Signature: ()TT;

  private static com.oracle.js.parser.ir.Expression[] valueToArray(java.util.List<com.oracle.js.parser.ir.Expression>);
    descriptor: (Ljava/util/List;)[Lcom/oracle/js/parser/ir/Expression;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.List value
         0: .line 174
            aload 0 /* value */
            aload 0 /* value */
            invokeinterface java.util.List.size:()I
            anewarray com.oracle.js.parser.ir.Expression
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.oracle.js.parser.ir.Expression[]
            areturn
        end local 0 // java.util.List value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  Ljava/util/List<Lcom/oracle/js/parser/ir/Expression;>;
    Signature: (Ljava/util/List<Lcom/oracle/js/parser/ir/Expression;>;)[Lcom/oracle/js/parser/ir/Expression;
    MethodParameters:
       Name  Flags
      value  final

  public static com.oracle.js.parser.ir.LiteralNode<java.lang.Object> newInstance(long, int);
    descriptor: (JI)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // long token
        start local 2 // int finish
         0: .line 186
            new com.oracle.js.parser.ir.LiteralNode$NullLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            invokespecial com.oracle.js.parser.ir.LiteralNode$NullLiteralNode.<init>:(JI)V
            areturn
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
    Signature: (JI)Lcom/oracle/js/parser/ir/LiteralNode<Ljava/lang/Object;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final

  public static com.oracle.js.parser.ir.LiteralNode<java.lang.Boolean> newInstance(long, int, boolean);
    descriptor: (JIZ)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // long token
        start local 2 // int finish
        start local 3 // boolean value
         0: .line 230
            new com.oracle.js.parser.ir.LiteralNode$BooleanLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            iload 3 /* value */
            invokespecial com.oracle.js.parser.ir.LiteralNode$BooleanLiteralNode.<init>:(JIZ)V
            areturn
        end local 3 // boolean value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
            0    1     3   value  Z
    Signature: (JIZ)Lcom/oracle/js/parser/ir/LiteralNode<Ljava/lang/Boolean;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final

  public static com.oracle.js.parser.ir.LiteralNode<java.lang.Number> newInstance(long, int, java.lang.Number);
    descriptor: (JILjava/lang/Number;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // long token
        start local 2 // int finish
        start local 3 // java.lang.Number value
         0: .line 262
            new com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            aconst_null
            invokespecial com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode.<init>:(JILjava/lang/Number;Ljava/util/function/Function;)V
            areturn
        end local 3 // java.lang.Number value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
            0    1     3   value  Ljava/lang/Number;
    Signature: (JILjava/lang/Number;)Lcom/oracle/js/parser/ir/LiteralNode<Ljava/lang/Number;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final

  public static com.oracle.js.parser.ir.LiteralNode<java.lang.Number> newInstance(long, int, java.lang.Number, java.util.function.Function<java.lang.Number, java.lang.String>);
    descriptor: (JILjava/lang/Number;Ljava/util/function/Function;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // long token
        start local 2 // int finish
        start local 3 // java.lang.Number value
        start local 4 // java.util.function.Function toStringConverter
         0: .line 275
            new com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            aload 4 /* toStringConverter */
            invokespecial com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode.<init>:(JILjava/lang/Number;Ljava/util/function/Function;)V
            areturn
        end local 4 // java.util.function.Function toStringConverter
        end local 3 // java.lang.Number value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0              token  J
            0    1     2             finish  I
            0    1     3              value  Ljava/lang/Number;
            0    1     4  toStringConverter  Ljava/util/function/Function<Ljava/lang/Number;Ljava/lang/String;>;
    Signature: (JILjava/lang/Number;Ljava/util/function/Function<Ljava/lang/Number;Ljava/lang/String;>;)Lcom/oracle/js/parser/ir/LiteralNode<Ljava/lang/Number;>;
    MethodParameters:
                   Name  Flags
      token              final
      finish             final
      value              final
      toStringConverter  final

  public static com.oracle.js.parser.ir.LiteralNode<java.lang.String> newInstance(long, java.lang.String);
    descriptor: (JLjava/lang/String;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // long token
        start local 2 // java.lang.String value
         0: .line 300
            lload 0 /* token */
            invokestatic com.oracle.js.parser.Token.withDelimiter:(J)J
            lstore 3 /* tokenWithDelimiter */
        start local 3 // long tokenWithDelimiter
         1: .line 301
            lload 3 /* tokenWithDelimiter */
            invokestatic com.oracle.js.parser.Token.descPosition:(J)I
            lload 3 /* tokenWithDelimiter */
            invokestatic com.oracle.js.parser.Token.descLength:(J)I
            iadd
            istore 5 /* newFinish */
        start local 5 // int newFinish
         2: .line 302
            new com.oracle.js.parser.ir.LiteralNode$StringLiteralNode
            dup
            lload 3 /* tokenWithDelimiter */
            iload 5 /* newFinish */
            aload 2 /* value */
            invokespecial com.oracle.js.parser.ir.LiteralNode$StringLiteralNode.<init>:(JILjava/lang/String;)V
            areturn
        end local 5 // int newFinish
        end local 3 // long tokenWithDelimiter
        end local 2 // java.lang.String value
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0               token  J
            0    3     2               value  Ljava/lang/String;
            1    3     3  tokenWithDelimiter  J
            2    3     5           newFinish  I
    Signature: (JLjava/lang/String;)Lcom/oracle/js/parser/ir/LiteralNode<Ljava/lang/String;>;
    MethodParameters:
       Name  Flags
      token  final
      value  final

  public static com.oracle.js.parser.ir.LiteralNode<com.oracle.js.parser.Lexer$LexerToken> newInstance(long, int, com.oracle.js.parser.Lexer$LexerToken);
    descriptor: (JILcom/oracle/js/parser/Lexer$LexerToken;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // long token
        start local 2 // int finish
        start local 3 // com.oracle.js.parser.Lexer$LexerToken value
         0: .line 331
            new com.oracle.js.parser.ir.LiteralNode$LexerTokenLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            invokespecial com.oracle.js.parser.ir.LiteralNode$LexerTokenLiteralNode.<init>:(JILcom/oracle/js/parser/Lexer$LexerToken;)V
            areturn
        end local 3 // com.oracle.js.parser.Lexer$LexerToken value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
            0    1     3   value  Lcom/oracle/js/parser/Lexer$LexerToken;
    Signature: (JILcom/oracle/js/parser/Lexer$LexerToken;)Lcom/oracle/js/parser/ir/LiteralNode<Lcom/oracle/js/parser/Lexer$LexerToken;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final

  public static com.oracle.js.parser.ir.LiteralNode<com.oracle.js.parser.ir.Expression[]> newInstance(long, int, java.util.List<com.oracle.js.parser.ir.Expression>);
    descriptor: (JILjava/util/List;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // long token
        start local 2 // int finish
        start local 3 // java.util.List value
         0: .line 482
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            invokestatic com.oracle.js.parser.ir.LiteralNode.valueToArray:(Ljava/util/List;)[Lcom/oracle/js/parser/ir/Expression;
            invokestatic com.oracle.js.parser.ir.LiteralNode.newInstance:(JI[Lcom/oracle/js/parser/ir/Expression;)Lcom/oracle/js/parser/ir/LiteralNode;
            areturn
        end local 3 // java.util.List value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
            0    1     3   value  Ljava/util/List<Lcom/oracle/js/parser/ir/Expression;>;
    Signature: (JILjava/util/List<Lcom/oracle/js/parser/ir/Expression;>;)Lcom/oracle/js/parser/ir/LiteralNode<[Lcom/oracle/js/parser/ir/Expression;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final

  public static com.oracle.js.parser.ir.LiteralNode<com.oracle.js.parser.ir.Expression[]> newInstance(long, int, java.util.List<com.oracle.js.parser.ir.Expression>, boolean, boolean, boolean);
    descriptor: (JILjava/util/List;ZZZ)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=7, args_size=6
        start local 0 // long token
        start local 2 // int finish
        start local 3 // java.util.List value
        start local 4 // boolean hasSpread
        start local 5 // boolean hasTrailingComma
        start local 6 // boolean hasCoverInitializedName
         0: .line 497
            new com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            invokestatic com.oracle.js.parser.ir.LiteralNode.valueToArray:(Ljava/util/List;)[Lcom/oracle/js/parser/ir/Expression;
            iload 4 /* hasSpread */
            iload 5 /* hasTrailingComma */
            iload 6 /* hasCoverInitializedName */
            invokespecial com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode.<init>:(JI[Lcom/oracle/js/parser/ir/Expression;ZZZ)V
            areturn
        end local 6 // boolean hasCoverInitializedName
        end local 5 // boolean hasTrailingComma
        end local 4 // boolean hasSpread
        end local 3 // java.util.List value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0                    token  J
            0    1     2                   finish  I
            0    1     3                    value  Ljava/util/List<Lcom/oracle/js/parser/ir/Expression;>;
            0    1     4                hasSpread  Z
            0    1     5         hasTrailingComma  Z
            0    1     6  hasCoverInitializedName  Z
    Signature: (JILjava/util/List<Lcom/oracle/js/parser/ir/Expression;>;ZZZ)Lcom/oracle/js/parser/ir/LiteralNode<[Lcom/oracle/js/parser/ir/Expression;>;
    MethodParameters:
                         Name  Flags
      token                    
      finish                   
      value                    
      hasSpread                
      hasTrailingComma         
      hasCoverInitializedName  

  public static com.oracle.js.parser.ir.LiteralNode<com.oracle.js.parser.ir.Expression[]> newInstance(long, int, com.oracle.js.parser.ir.Expression[]);
    descriptor: (JI[Lcom/oracle/js/parser/ir/Expression;)Lcom/oracle/js/parser/ir/LiteralNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // long token
        start local 2 // int finish
        start local 3 // com.oracle.js.parser.ir.Expression[] value
         0: .line 510
            new com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode
            dup
            lload 0 /* token */
            iload 2 /* finish */
            aload 3 /* value */
            invokespecial com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode.<init>:(JI[Lcom/oracle/js/parser/ir/Expression;)V
            areturn
        end local 3 // com.oracle.js.parser.ir.Expression[] value
        end local 2 // int finish
        end local 0 // long token
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   token  J
            0    1     2  finish  I
            0    1     3   value  [Lcom/oracle/js/parser/ir/Expression;
    Signature: (JI[Lcom/oracle/js/parser/ir/Expression;)Lcom/oracle/js/parser/ir/LiteralNode<[Lcom/oracle/js/parser/ir/Expression;>;
    MethodParameters:
        Name  Flags
      token   final
      finish  final
      value   final
}
Signature: <T:Ljava/lang/Object;>Lcom/oracle/js/parser/ir/Expression;
SourceFile: "LiteralNode.java"
NestMembers:
  com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode  com.oracle.js.parser.ir.LiteralNode$BooleanLiteralNode  com.oracle.js.parser.ir.LiteralNode$LexerTokenLiteralNode  com.oracle.js.parser.ir.LiteralNode$NullLiteralNode  com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode  com.oracle.js.parser.ir.LiteralNode$PrimitiveLiteralNode  com.oracle.js.parser.ir.LiteralNode$StringLiteralNode
InnerClasses:
  public abstract LexerToken = com.oracle.js.parser.Lexer$LexerToken of com.oracle.js.parser.Lexer
  public final ArrayLiteralNode = com.oracle.js.parser.ir.LiteralNode$ArrayLiteralNode of com.oracle.js.parser.ir.LiteralNode
  private final BooleanLiteralNode = com.oracle.js.parser.ir.LiteralNode$BooleanLiteralNode of com.oracle.js.parser.ir.LiteralNode
  private final LexerTokenLiteralNode = com.oracle.js.parser.ir.LiteralNode$LexerTokenLiteralNode of com.oracle.js.parser.ir.LiteralNode
  private final NullLiteralNode = com.oracle.js.parser.ir.LiteralNode$NullLiteralNode of com.oracle.js.parser.ir.LiteralNode
  private final NumberLiteralNode = com.oracle.js.parser.ir.LiteralNode$NumberLiteralNode of com.oracle.js.parser.ir.LiteralNode
  public PrimitiveLiteralNode = com.oracle.js.parser.ir.LiteralNode$PrimitiveLiteralNode of com.oracle.js.parser.ir.LiteralNode
  private final StringLiteralNode = com.oracle.js.parser.ir.LiteralNode$StringLiteralNode of com.oracle.js.parser.ir.LiteralNode