class com.oracle.js.parser.Parser$ParserState
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.oracle.js.parser.Parser$ParserState
  super_class: java.lang.Object
{
  private final int position;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int line;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int linePosition;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(int, int, int);
    descriptor: (III)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.oracle.js.parser.Parser$ParserState this
        start local 1 // int position
        start local 2 // int line
        start local 3 // int linePosition
         0: .line 5374
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 5375
            aload 0 /* this */
            iload 1 /* position */
            putfield com.oracle.js.parser.Parser$ParserState.position:I
         2: .line 5376
            aload 0 /* this */
            iload 2 /* line */
            putfield com.oracle.js.parser.Parser$ParserState.line:I
         3: .line 5377
            aload 0 /* this */
            iload 3 /* linePosition */
            putfield com.oracle.js.parser.Parser$ParserState.linePosition:I
         4: .line 5378
            return
        end local 3 // int linePosition
        end local 2 // int line
        end local 1 // int position
        end local 0 // com.oracle.js.parser.Parser$ParserState this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lcom/oracle/js/parser/Parser$ParserState;
            0    5     1      position  I
            0    5     2          line  I
            0    5     3  linePosition  I
    MethodParameters:
              Name  Flags
      position      final
      line          final
      linePosition  final

  com.oracle.js.parser.Lexer createLexer(com.oracle.js.parser.Source, com.oracle.js.parser.Lexer, com.oracle.js.parser.TokenStream, boolean, int, boolean, boolean, boolean);
    descriptor: (Lcom/oracle/js/parser/Source;Lcom/oracle/js/parser/Lexer;Lcom/oracle/js/parser/TokenStream;ZIZZZ)Lcom/oracle/js/parser/Lexer;
    flags: (0x0000) 
    Code:
      stack=12, locals=10, args_size=9
        start local 0 // com.oracle.js.parser.Parser$ParserState this
        start local 1 // com.oracle.js.parser.Source source
        start local 2 // com.oracle.js.parser.Lexer lexer
        start local 3 // com.oracle.js.parser.TokenStream stream
        start local 4 // boolean scripting
        start local 5 // int ecmaScriptVersion
        start local 6 // boolean shebang
        start local 7 // boolean isModule
        start local 8 // boolean allowBigInt
         0: .line 5382
            new com.oracle.js.parser.Lexer
            dup
            aload 1 /* source */
            aload 0 /* this */
            getfield com.oracle.js.parser.Parser$ParserState.position:I
            aload 2 /* lexer */
            getfield com.oracle.js.parser.Lexer.limit:I
            aload 0 /* this */
            getfield com.oracle.js.parser.Parser$ParserState.position:I
            isub
            aload 3 /* stream */
            iload 4 /* scripting */
            iload 5 /* ecmaScriptVersion */
            iload 6 /* shebang */
            iload 7 /* isModule */
            iconst_1
            iload 8 /* allowBigInt */
            invokespecial com.oracle.js.parser.Lexer.<init>:(Lcom/oracle/js/parser/Source;IILcom/oracle/js/parser/TokenStream;ZIZZZZ)V
            astore 9 /* newLexer */
        start local 9 // com.oracle.js.parser.Lexer newLexer
         1: .line 5383
            aload 9 /* newLexer */
            new com.oracle.js.parser.Lexer$State
            dup
            aload 0 /* this */
            getfield com.oracle.js.parser.Parser$ParserState.position:I
            ldc 2147483647
            aload 0 /* this */
            getfield com.oracle.js.parser.Parser$ParserState.line:I
            iconst_m1
            aload 0 /* this */
            getfield com.oracle.js.parser.Parser$ParserState.linePosition:I
            getstatic com.oracle.js.parser.TokenType.SEMICOLON:Lcom/oracle/js/parser/TokenType;
            invokespecial com.oracle.js.parser.Lexer$State.<init>:(IIIIILcom/oracle/js/parser/TokenType;)V
            invokevirtual com.oracle.js.parser.Lexer.restoreState:(Lcom/oracle/js/parser/Scanner$State;)V
         2: .line 5384
            aload 9 /* newLexer */
            areturn
        end local 9 // com.oracle.js.parser.Lexer newLexer
        end local 8 // boolean allowBigInt
        end local 7 // boolean isModule
        end local 6 // boolean shebang
        end local 5 // int ecmaScriptVersion
        end local 4 // boolean scripting
        end local 3 // com.oracle.js.parser.TokenStream stream
        end local 2 // com.oracle.js.parser.Lexer lexer
        end local 1 // com.oracle.js.parser.Source source
        end local 0 // com.oracle.js.parser.Parser$ParserState this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lcom/oracle/js/parser/Parser$ParserState;
            0    3     1             source  Lcom/oracle/js/parser/Source;
            0    3     2              lexer  Lcom/oracle/js/parser/Lexer;
            0    3     3             stream  Lcom/oracle/js/parser/TokenStream;
            0    3     4          scripting  Z
            0    3     5  ecmaScriptVersion  I
            0    3     6            shebang  Z
            0    3     7           isModule  Z
            0    3     8        allowBigInt  Z
            1    3     9           newLexer  Lcom/oracle/js/parser/Lexer;
    MethodParameters:
                   Name  Flags
      source             final
      lexer              final
      stream             final
      scripting          final
      ecmaScriptVersion  final
      shebang            final
      isModule           final
      allowBigInt        final
}
SourceFile: "Parser.java"
NestHost: com.oracle.js.parser.Parser
InnerClasses:
  State = com.oracle.js.parser.Lexer$State of com.oracle.js.parser.Lexer
  private ParserState = com.oracle.js.parser.Parser$ParserState of com.oracle.js.parser.Parser
  State = com.oracle.js.parser.Scanner$State of com.oracle.js.parser.Scanner