public class android.text.AutoText
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.text.AutoText
  super_class: java.lang.Object
{
  private static final int TRIE_C;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int TRIE_OFF;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int TRIE_CHILD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int TRIE_NEXT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int TRIE_SIZEOF;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private static final char TRIE_NULL;
    descriptor: C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 65535

  private static final int TRIE_ROOT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int INCREMENT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  private static final int DEFAULT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 14337

  private static final int RIGHT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9300

  private static android.text.AutoText sInstance;
    descriptor: Landroid/text/AutoText;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.lang.Object sLock;
    descriptor: Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private char[] mTrie;
    descriptor: [C
    flags: (0x0002) ACC_PRIVATE

  private char mTrieUsed;
    descriptor: C
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String mText;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Locale mLocale;
    descriptor: Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE

  private int mSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 57
            new android.text.AutoText
            dup
            invokestatic android.content.res.Resources.getSystem:()Landroid/content/res/Resources;
            invokespecial android.text.AutoText.<init>:(Landroid/content/res/Resources;)V
            putstatic android.text.AutoText.sInstance:Landroid/text/AutoText;
         1: .line 58
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic android.text.AutoText.sLock:Ljava/lang/Object;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(android.content.res.Resources);
    descriptor: (Landroid/content/res/Resources;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.text.AutoText this
        start local 1 // android.content.res.Resources resources
         0: .line 75
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 76
            aload 0 /* this */
            aload 1 /* resources */
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            getfield android.content.res.Configuration.locale:Ljava/util/Locale;
            putfield android.text.AutoText.mLocale:Ljava/util/Locale;
         2: .line 77
            aload 0 /* this */
            aload 1 /* resources */
            invokevirtual android.text.AutoText.init:(Landroid/content/res/Resources;)V
         3: .line 78
            return
        end local 1 // android.content.res.Resources resources
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Landroid/text/AutoText;
            0    4     1  resources  Landroid/content/res/Resources;
    MethodParameters:
           Name  Flags
      resources  

  private static android.text.AutoText getInstance(android.view.View);
    descriptor: (Landroid/view/View;)Landroid/text/AutoText;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // android.view.View view
         0: .line 87
            aload 0 /* view */
            invokevirtual android.view.View.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
            astore 1 /* res */
        start local 1 // android.content.res.Resources res
         1: .line 88
            aload 1 /* res */
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            getfield android.content.res.Configuration.locale:Ljava/util/Locale;
            astore 2 /* locale */
        start local 2 // java.util.Locale locale
         2: .line 91
            getstatic android.text.AutoText.sLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
         3: .line 92
            getstatic android.text.AutoText.sInstance:Landroid/text/AutoText;
            astore 3 /* instance */
        start local 3 // android.text.AutoText instance
         4: .line 94
            aload 2 /* locale */
            aload 3 /* instance */
            getfield android.text.AutoText.mLocale:Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifne 7
         5: .line 95
            new android.text.AutoText
            dup
            aload 1 /* res */
            invokespecial android.text.AutoText.<init>:(Landroid/content/res/Resources;)V
            astore 3 /* instance */
         6: .line 96
            aload 3 /* instance */
            putstatic android.text.AutoText.sInstance:Landroid/text/AutoText;
         7: .line 91
      StackMap locals: android.view.View android.content.res.Resources java.util.Locale android.text.AutoText java.lang.Object
      StackMap stack:
            aload 4
            monitorexit
         8: goto 11
        end local 3 // android.text.AutoText instance
      StackMap locals: android.view.View android.content.res.Resources java.util.Locale top java.lang.Object
      StackMap stack: java.lang.Throwable
         9: aload 4
            monitorexit
        10: athrow
        start local 3 // android.text.AutoText instance
        11: .line 100
      StackMap locals: android.view.View android.content.res.Resources java.util.Locale android.text.AutoText
      StackMap stack:
            aload 3 /* instance */
            areturn
        end local 3 // android.text.AutoText instance
        end local 2 // java.util.Locale locale
        end local 1 // android.content.res.Resources res
        end local 0 // android.view.View view
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      view  Landroid/view/View;
            1   12     1       res  Landroid/content/res/Resources;
            2   12     2    locale  Ljava/util/Locale;
            4    9     3  instance  Landroid/text/AutoText;
           11   12     3  instance  Landroid/text/AutoText;
      Exception table:
        from    to  target  type
           3     8       9  any
           9    10       9  any
    MethodParameters:
      Name  Flags
      view  

  public static java.lang.String get(java.lang.CharSequence, int, int, android.view.View);
    descriptor: (Ljava/lang/CharSequence;IILandroid/view/View;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // java.lang.CharSequence src
        start local 1 // int start
        start local 2 // int end
        start local 3 // android.view.View view
         0: .line 110
            aload 3 /* view */
            invokestatic android.text.AutoText.getInstance:(Landroid/view/View;)Landroid/text/AutoText;
            aload 0 /* src */
            iload 1 /* start */
            iload 2 /* end */
            invokevirtual android.text.AutoText.lookup:(Ljava/lang/CharSequence;II)Ljava/lang/String;
            areturn
        end local 3 // android.view.View view
        end local 2 // int end
        end local 1 // int start
        end local 0 // java.lang.CharSequence src
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0    src  Ljava/lang/CharSequence;
            0    1     1  start  I
            0    1     2    end  I
            0    1     3   view  Landroid/view/View;
    MethodParameters:
       Name  Flags
      src    
      start  final
      end    final
      view   

  public static int getSize(android.view.View);
    descriptor: (Landroid/view/View;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.view.View view
         0: .line 121
            aload 0 /* view */
            invokestatic android.text.AutoText.getInstance:(Landroid/view/View;)Landroid/text/AutoText;
            invokevirtual android.text.AutoText.getSize:()I
            ireturn
        end local 0 // android.view.View view
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  view  Landroid/view/View;
    MethodParameters:
      Name  Flags
      view  

  private int getSize();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.text.AutoText this
         0: .line 128
            aload 0 /* this */
            getfield android.text.AutoText.mSize:I
            ireturn
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/text/AutoText;

  private java.lang.String lookup(java.lang.CharSequence, int, int);
    descriptor: (Ljava/lang/CharSequence;II)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=4
        start local 0 // android.text.AutoText this
        start local 1 // java.lang.CharSequence src
        start local 2 // int start
        start local 3 // int end
         0: .line 132
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iconst_0
            caload
            istore 4 /* here */
        start local 4 // int here
         1: .line 134
            iload 2 /* start */
            istore 5 /* i */
        start local 5 // int i
         2: goto 18
         3: .line 135
      StackMap locals: int int
      StackMap stack:
            aload 1 /* src */
            iload 5 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
         4: .line 137
            goto 14
         5: .line 138
      StackMap locals: int
      StackMap stack:
            iload 6 /* c */
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* here */
            iconst_0
            iadd
            caload
            if_icmpne 13
         6: .line 139
            iload 5 /* i */
            iload 3 /* end */
            iconst_1
            isub
            if_icmpne 11
         7: .line 140
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* here */
            iconst_1
            iadd
            caload
            ldc 65535
            if_icmpeq 11
         8: .line 141
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* here */
            iconst_1
            iadd
            caload
            istore 7 /* off */
        start local 7 // int off
         9: .line 142
            aload 0 /* this */
            getfield android.text.AutoText.mText:Ljava/lang/String;
            iload 7 /* off */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* len */
        start local 8 // int len
        10: .line 144
            aload 0 /* this */
            getfield android.text.AutoText.mText:Ljava/lang/String;
            iload 7 /* off */
            iconst_1
            iadd
            iload 7 /* off */
            iconst_1
            iadd
            iload 8 /* len */
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 8 // int len
        end local 7 // int off
        11: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* here */
            iconst_2
            iadd
            caload
            istore 4 /* here */
        12: .line 148
            goto 15
        13: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* here */
            iconst_3
            iadd
            caload
            istore 4 /* here */
      StackMap locals:
      StackMap stack:
        14: iload 4 /* here */
            ldc 65535
            if_icmpne 5
        15: .line 152
      StackMap locals:
      StackMap stack:
            iload 4 /* here */
            ldc 65535
            if_icmpne 17
        16: .line 153
            aconst_null
            areturn
        end local 6 // char c
        17: .line 134
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 5 /* i */
            iload 3 /* end */
            if_icmplt 3
        end local 5 // int i
        19: .line 157
            aconst_null
            areturn
        end local 4 // int here
        end local 3 // int end
        end local 2 // int start
        end local 1 // java.lang.CharSequence src
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Landroid/text/AutoText;
            0   20     1    src  Ljava/lang/CharSequence;
            0   20     2  start  I
            0   20     3    end  I
            1   20     4   here  I
            2   19     5      i  I
            4   17     6      c  C
            9   11     7    off  I
           10   11     8    len  I
    MethodParameters:
       Name  Flags
      src    
      start  final
      end    final

  private void init(android.content.res.Resources);
    descriptor: (Landroid/content/res/Resources;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.text.AutoText this
         0: .line 161
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.xml cannot be resolved to a variable\n\tThe method beginDocument(XmlPullParser, String) from the type XmlUtils refers to the missing type XmlPullParser\n\tThe method nextElement(XmlPullParser) from the type XmlUtils refers to the missing type XmlPullParser\n\tThe method getName() is undefined for the type XmlResourceParser\n\tThe method next() is undefined for the type XmlResourceParser\n\tXmlPullParser cannot be resolved to a variable\n\tThe method getText() is undefined for the type XmlResourceParser\n\tXmlPullParserException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/text/AutoText;
    MethodParameters:
      Name  Flags
      r     

  private void add(java.lang.String, char);
    descriptor: (Ljava/lang/String;C)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // android.text.AutoText this
        start local 1 // java.lang.String src
        start local 2 // char off
         0: .line 212
            aload 1 /* src */
            invokevirtual java.lang.String.length:()I
            istore 3 /* slen */
        start local 3 // int slen
         1: .line 213
            iconst_0
            istore 4 /* herep */
        start local 4 // int herep
         2: .line 215
            aload 0 /* this */
            dup
            getfield android.text.AutoText.mSize:I
            iconst_1
            iadd
            putfield android.text.AutoText.mSize:I
         3: .line 217
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 29
         5: .line 218
      StackMap locals: int int int
      StackMap stack:
            aload 1 /* src */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
         6: .line 219
            iconst_0
            istore 7 /* found */
        start local 7 // boolean found
         7: .line 221
            goto 16
         8: .line 223
      StackMap locals: int int
      StackMap stack:
            iload 6 /* c */
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_0
            iadd
            caload
            if_icmpne 15
         9: .line 227
            iload 5 /* i */
            iload 3 /* slen */
            iconst_1
            isub
            if_icmpne 12
        10: .line 228
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_1
            iadd
            iload 2 /* off */
            castore
        11: .line 229
            return
        12: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_2
            iadd
            istore 4 /* herep */
        13: .line 236
            iconst_1
            istore 7 /* found */
        14: .line 237
            goto 17
        15: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_3
            iadd
            istore 4 /* herep */
        16: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            ldc 65535
            if_icmpne 8
        17: .line 241
      StackMap locals:
      StackMap stack:
            iload 7 /* found */
            ifne 28
        18: .line 244
            aload 0 /* this */
            invokevirtual android.text.AutoText.newTrieNode:()C
            istore 8 /* node */
        start local 8 // char node
        19: .line 245
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            iload 8 /* node */
            castore
        20: .line 247
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_0
            iadd
            iload 6 /* c */
            castore
        21: .line 248
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_1
            iadd
            ldc 65535
            castore
        22: .line 249
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_3
            iadd
            ldc 65535
            castore
        23: .line 250
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_2
            iadd
            ldc 65535
            castore
        24: .line 254
            iload 5 /* i */
            iload 3 /* slen */
            iconst_1
            isub
            if_icmpne 27
        25: .line 255
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_1
            iadd
            iload 2 /* off */
            castore
        26: .line 256
            return
        27: .line 261
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iload 4 /* herep */
            caload
            iconst_2
            iadd
            istore 4 /* herep */
        end local 8 // char node
        end local 7 // boolean found
        end local 6 // char c
        28: .line 217
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 5 /* i */
            iload 3 /* slen */
            if_icmplt 5
        end local 5 // int i
        30: .line 264
            return
        end local 4 // int herep
        end local 3 // int slen
        end local 2 // char off
        end local 1 // java.lang.String src
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   31     0   this  Landroid/text/AutoText;
            0   31     1    src  Ljava/lang/String;
            0   31     2    off  C
            1   31     3   slen  I
            2   31     4  herep  I
            4   30     5      i  I
            6   28     6      c  C
            7   28     7  found  Z
           19   28     8   node  C
    MethodParameters:
      Name  Flags
      src   
      off   

  private char newTrieNode();
    descriptor: ()C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // android.text.AutoText this
         0: .line 267
            aload 0 /* this */
            getfield android.text.AutoText.mTrieUsed:C
            iconst_4
            iadd
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            arraylength
            if_icmple 4
         1: .line 268
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            arraylength
            sipush 1024
            iadd
            newarray 5
            astore 1 /* copy */
        start local 1 // char[] copy
         2: .line 269
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            iconst_0
            aload 1 /* copy */
            iconst_0
            aload 0 /* this */
            getfield android.text.AutoText.mTrie:[C
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         3: .line 270
            aload 0 /* this */
            aload 1 /* copy */
            putfield android.text.AutoText.mTrie:[C
        end local 1 // char[] copy
         4: .line 273
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.text.AutoText.mTrieUsed:C
            istore 1 /* ret */
        start local 1 // char ret
         5: .line 274
            aload 0 /* this */
            dup
            getfield android.text.AutoText.mTrieUsed:C
            iconst_4
            iadd
            i2c
            putfield android.text.AutoText.mTrieUsed:C
         6: .line 276
            iload 1 /* ret */
            ireturn
        end local 1 // char ret
        end local 0 // android.text.AutoText this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Landroid/text/AutoText;
            2    4     1  copy  [C
            5    7     1   ret  C
}
SourceFile: "AutoText.java"