public class org.apache.lucene.expressions.js.VariableContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.expressions.js.VariableContext
  super_class: java.lang.Object
{
  public final org.apache.lucene.expressions.js.VariableContext$Type type;
    descriptor: Lorg/apache/lucene/expressions/js/VariableContext$Type;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final java.lang.String text;
    descriptor: Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final int integer;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private void <init>(org.apache.lucene.expressions.js.VariableContext$Type, java.lang.String, int);
    descriptor: (Lorg/apache/lucene/expressions/js/VariableContext$Type;Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.lucene.expressions.js.VariableContext this
        start local 1 // org.apache.lucene.expressions.js.VariableContext$Type c
        start local 2 // java.lang.String s
        start local 3 // int i
         0: .line 69
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 70
            aload 0 /* this */
            aload 1 /* c */
            putfield org.apache.lucene.expressions.js.VariableContext.type:Lorg/apache/lucene/expressions/js/VariableContext$Type;
         2: .line 71
            aload 0 /* this */
            aload 2 /* s */
            putfield org.apache.lucene.expressions.js.VariableContext.text:Ljava/lang/String;
         3: .line 72
            aload 0 /* this */
            iload 3 /* i */
            putfield org.apache.lucene.expressions.js.VariableContext.integer:I
         4: .line 73
            return
        end local 3 // int i
        end local 2 // java.lang.String s
        end local 1 // org.apache.lucene.expressions.js.VariableContext$Type c
        end local 0 // org.apache.lucene.expressions.js.VariableContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/lucene/expressions/js/VariableContext;
            0    5     1     c  Lorg/apache/lucene/expressions/js/VariableContext$Type;
            0    5     2     s  Ljava/lang/String;
            0    5     3     i  I
    MethodParameters:
      Name  Flags
      c     
      s     
      i     

  public static final org.apache.lucene.expressions.js.VariableContext[] parse(java.lang.String);
    descriptor: (Ljava/lang/String;)[Lorg/apache/lucene/expressions/js/VariableContext;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.String variable
         0: .line 80
            aload 0 /* variable */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 1 /* text */
        start local 1 // char[] text
         1: .line 81
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* contexts */
        start local 2 // java.util.List contexts
         2: .line 82
            aload 1 /* text */
            iconst_0
            aload 2 /* contexts */
            invokestatic org.apache.lucene.expressions.js.VariableContext.addMember:([CILjava/util/List;)I
            istore 3 /* i */
        start local 3 // int i
         3: .line 83
            goto 12
         4: .line 84
      StackMap locals: char[] java.util.List int
      StackMap stack:
            aload 1 /* text */
            iload 3 /* i */
            caload
            bipush 91
            if_icmpne 11
         5: .line 85
            aload 1 /* text */
            iinc 3 /* i */ 1
            iload 3 /* i */
            caload
            bipush 39
            if_icmpne 8
         6: .line 86
            aload 1 /* text */
            iload 3 /* i */
            aload 2 /* contexts */
            invokestatic org.apache.lucene.expressions.js.VariableContext.addStringIndex:([CILjava/util/List;)I
            istore 3 /* i */
         7: .line 87
            goto 9
         8: .line 88
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            iload 3 /* i */
            aload 2 /* contexts */
            invokestatic org.apache.lucene.expressions.js.VariableContext.addIntIndex:([CILjava/util/List;)I
            istore 3 /* i */
         9: .line 90
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
        10: .line 91
            goto 12
        11: .line 92
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            iload 3 /* i */
            iconst_1
            iadd
            aload 2 /* contexts */
            invokestatic org.apache.lucene.expressions.js.VariableContext.addMember:([CILjava/util/List;)I
            istore 3 /* i */
        12: .line 83
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            aload 1 /* text */
            arraylength
            if_icmplt 4
        13: .line 95
            aload 2 /* contexts */
            aload 2 /* contexts */
            invokeinterface java.util.List.size:()I
            anewarray org.apache.lucene.expressions.js.VariableContext
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.apache.lucene.expressions.js.VariableContext[]
            areturn
        end local 3 // int i
        end local 2 // java.util.List contexts
        end local 1 // char[] text
        end local 0 // java.lang.String variable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0  variable  Ljava/lang/String;
            1   14     1      text  [C
            2   14     2  contexts  Ljava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;
            3   14     3         i  I
    MethodParameters:
          Name  Flags
      variable  

  private static int addMember(char[], int, java.util.List<org.apache.lucene.expressions.js.VariableContext>);
    descriptor: ([CILjava/util/List;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=4, args_size=3
        start local 0 // char[] text
        start local 1 // int i
        start local 2 // java.util.List contexts
         0: .line 100
            iload 1 /* i */
            iconst_1
            iadd
            istore 3 /* j */
        start local 3 // int j
         1: .line 101
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
         3: iload 3 /* j */
            aload 0 /* text */
            arraylength
            if_icmpge 4
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 91
            if_icmpeq 4
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 46
            if_icmpeq 4
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 40
            if_icmpne 2
         4: .line 102
      StackMap locals:
      StackMap stack:
            iload 3 /* j */
            iconst_1
            iadd
            aload 0 /* text */
            arraylength
            if_icmpge 8
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 40
            if_icmpne 8
            aload 0 /* text */
            iload 3 /* j */
            iconst_1
            iadd
            caload
            bipush 41
            if_icmpne 8
         5: .line 103
            aload 2 /* contexts */
            new org.apache.lucene.expressions.js.VariableContext
            dup
            getstatic org.apache.lucene.expressions.js.VariableContext$Type.METHOD:Lorg/apache/lucene/expressions/js/VariableContext$Type;
            new java.lang.String
            dup
            aload 0 /* text */
            iload 1 /* i */
            iload 3 /* j */
            iload 1 /* i */
            isub
            invokespecial java.lang.String.<init>:([CII)V
            iconst_m1
            invokespecial org.apache.lucene.expressions.js.VariableContext.<init>:(Lorg/apache/lucene/expressions/js/VariableContext$Type;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 104
            iinc 3 /* j */ 2
         7: .line 105
            goto 9
         8: .line 106
      StackMap locals:
      StackMap stack:
            aload 2 /* contexts */
            new org.apache.lucene.expressions.js.VariableContext
            dup
            getstatic org.apache.lucene.expressions.js.VariableContext$Type.MEMBER:Lorg/apache/lucene/expressions/js/VariableContext$Type;
            new java.lang.String
            dup
            aload 0 /* text */
            iload 1 /* i */
            iload 3 /* j */
            iload 1 /* i */
            isub
            invokespecial java.lang.String.<init>:([CII)V
            iconst_m1
            invokespecial org.apache.lucene.expressions.js.VariableContext.<init>:(Lorg/apache/lucene/expressions/js/VariableContext$Type;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 108
      StackMap locals:
      StackMap stack:
            iload 3 /* j */
            ireturn
        end local 3 // int j
        end local 2 // java.util.List contexts
        end local 1 // int i
        end local 0 // char[] text
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      text  [C
            0   10     1         i  I
            0   10     2  contexts  Ljava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;
            1   10     3         j  I
    Signature: ([CILjava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;)I
    MethodParameters:
          Name  Flags
      text      final
      i         
      contexts  

  private static int addStringIndex(char[], int, java.util.List<org.apache.lucene.expressions.js.VariableContext>);
    descriptor: ([CILjava/util/List;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // char[] text
        start local 1 // int i
        start local 2 // java.util.List contexts
         0: .line 113
            iinc 1 /* i */ 1
         1: .line 114
            iload 1 /* i */
            istore 3 /* j */
        start local 3 // int j
         2: .line 115
            goto 5
         3: .line 116
      StackMap locals: int
      StackMap stack:
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 92
            if_icmpne 4
            iinc 3 /* j */ 1
         4: .line 117
      StackMap locals:
      StackMap stack:
            iinc 3 /* j */ 1
         5: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 39
            if_icmpne 3
         6: .line 119
            new java.lang.StringBuffer
            dup
            iload 3 /* j */
            iload 1 /* i */
            isub
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 4 /* buf */
        start local 4 // java.lang.StringBuffer buf
         7: .line 120
            goto 11
         8: .line 121
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 0 /* text */
            iload 1 /* i */
            caload
            bipush 92
            if_icmpne 9
            iinc 1 /* i */ 1
         9: .line 122
      StackMap locals:
      StackMap stack:
            aload 4 /* buf */
            aload 0 /* text */
            iload 1 /* i */
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        10: .line 123
            iinc 1 /* i */ 1
        11: .line 120
      StackMap locals:
      StackMap stack:
            iload 1 /* i */
            iload 3 /* j */
            if_icmplt 8
        12: .line 125
            aload 2 /* contexts */
            new org.apache.lucene.expressions.js.VariableContext
            dup
            getstatic org.apache.lucene.expressions.js.VariableContext$Type.STR_INDEX:Lorg/apache/lucene/expressions/js/VariableContext$Type;
            aload 4 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            iconst_m1
            invokespecial org.apache.lucene.expressions.js.VariableContext.<init>:(Lorg/apache/lucene/expressions/js/VariableContext$Type;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 126
            iload 3 /* j */
            iconst_1
            iadd
            ireturn
        end local 4 // java.lang.StringBuffer buf
        end local 3 // int j
        end local 2 // java.util.List contexts
        end local 1 // int i
        end local 0 // char[] text
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      text  [C
            0   14     1         i  I
            0   14     2  contexts  Ljava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;
            2   14     3         j  I
            7   14     4       buf  Ljava/lang/StringBuffer;
    Signature: ([CILjava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;)I
    MethodParameters:
          Name  Flags
      text      final
      i         
      contexts  

  private static int addIntIndex(char[], int, java.util.List<org.apache.lucene.expressions.js.VariableContext>);
    descriptor: ([CILjava/util/List;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // char[] text
        start local 1 // int i
        start local 2 // java.util.List contexts
         0: .line 131
            iload 1 /* i */
            iconst_1
            iadd
            istore 3 /* j */
        start local 3 // int j
         1: .line 132
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
         3: aload 0 /* text */
            iload 3 /* j */
            caload
            bipush 93
            if_icmpne 2
         4: .line 133
            new java.lang.String
            dup
            aload 0 /* text */
            iload 1 /* i */
            iload 3 /* j */
            iload 1 /* i */
            isub
            invokespecial java.lang.String.<init>:([CII)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 4 /* index */
        start local 4 // int index
         5: .line 134
            aload 2 /* contexts */
            new org.apache.lucene.expressions.js.VariableContext
            dup
            getstatic org.apache.lucene.expressions.js.VariableContext$Type.INT_INDEX:Lorg/apache/lucene/expressions/js/VariableContext$Type;
            aconst_null
            iload 4 /* index */
            invokespecial org.apache.lucene.expressions.js.VariableContext.<init>:(Lorg/apache/lucene/expressions/js/VariableContext$Type;Ljava/lang/String;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 135
            iload 3 /* j */
            ireturn
        end local 4 // int index
        end local 3 // int j
        end local 2 // java.util.List contexts
        end local 1 // int i
        end local 0 // char[] text
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      text  [C
            0    7     1         i  I
            0    7     2  contexts  Ljava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;
            1    7     3         j  I
            5    7     4     index  I
    Signature: ([CILjava/util/List<Lorg/apache/lucene/expressions/js/VariableContext;>;)I
    MethodParameters:
          Name  Flags
      text      final
      i         
      contexts  
}
SourceFile: "VariableContext.java"
NestMembers:
  org.apache.lucene.expressions.js.VariableContext$Type
InnerClasses:
  public final Type = org.apache.lucene.expressions.js.VariableContext$Type of org.apache.lucene.expressions.js.VariableContext