public abstract class jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl extends jdk.internal.icu.text.Normalizer2
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl
  super_class: jdk.internal.icu.text.Normalizer2
{
  public final jdk.internal.icu.impl.NormalizerImpl impl;
    descriptor: Ljdk/internal/icu/impl/NormalizerImpl;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public void <init>(jdk.internal.icu.impl.NormalizerImpl);
    descriptor: (Ljdk/internal/icu/impl/NormalizerImpl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // jdk.internal.icu.impl.NormalizerImpl ni
         0: .line 105
            aload 0 /* this */
            invokespecial jdk.internal.icu.text.Normalizer2.<init>:()V
         1: .line 106
            aload 0 /* this */
            aload 1 /* ni */
            putfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
         2: .line 107
            return
        end local 1 // jdk.internal.icu.impl.NormalizerImpl ni
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    3     1    ni  Ljdk/internal/icu/impl/NormalizerImpl;
    MethodParameters:
      Name  Flags
      ni    

  public java.lang.StringBuilder normalize(java.lang.CharSequence, java.lang.StringBuilder);
    descriptor: (Ljava/lang/CharSequence;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.CharSequence src
        start local 2 // java.lang.StringBuilder dest
         0: .line 112
            aload 2 /* dest */
            aload 1 /* src */
            if_acmpne 2
         1: .line 113
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 115
      StackMap locals:
      StackMap stack:
            aload 2 /* dest */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
         3: .line 116
            aload 0 /* this */
            aload 1 /* src */
            new jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer
            dup
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            aload 2 /* dest */
            aload 1 /* src */
            invokeinterface java.lang.CharSequence.length:()I
            invokespecial jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer.<init>:(Ljdk/internal/icu/impl/NormalizerImpl;Ljava/lang/Appendable;I)V
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.normalize:(Ljava/lang/CharSequence;Ljdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;)V
         4: .line 117
            aload 2 /* dest */
            areturn
        end local 2 // java.lang.StringBuilder dest
        end local 1 // java.lang.CharSequence src
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    5     1   src  Ljava/lang/CharSequence;
            0    5     2  dest  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      src   
      dest  

  public java.lang.Appendable normalize(java.lang.CharSequence, java.lang.Appendable);
    descriptor: (Ljava/lang/CharSequence;Ljava/lang/Appendable;)Ljava/lang/Appendable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.CharSequence src
        start local 2 // java.lang.Appendable dest
         0: .line 122
            aload 2 /* dest */
            aload 1 /* src */
            if_acmpne 2
         1: .line 123
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 126
      StackMap locals:
      StackMap stack:
            new jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer
            dup
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            aload 2 /* dest */
            aload 1 /* src */
            invokeinterface java.lang.CharSequence.length:()I
            invokespecial jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer.<init>:(Ljdk/internal/icu/impl/NormalizerImpl;Ljava/lang/Appendable;I)V
         3: .line 125
            astore 3 /* buffer */
        start local 3 // jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer buffer
         4: .line 127
            aload 0 /* this */
            aload 1 /* src */
            aload 3 /* buffer */
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.normalize:(Ljava/lang/CharSequence;Ljdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;)V
         5: .line 128
            aload 3 /* buffer */
            invokevirtual jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer.flush:()V
         6: .line 129
            aload 2 /* dest */
            areturn
        end local 3 // jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer buffer
        end local 2 // java.lang.Appendable dest
        end local 1 // java.lang.CharSequence src
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    7     1     src  Ljava/lang/CharSequence;
            0    7     2    dest  Ljava/lang/Appendable;
            4    7     3  buffer  Ljdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;
    MethodParameters:
      Name  Flags
      src   
      dest  

  protected abstract void normalize(java.lang.CharSequence, jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer);
    descriptor: (Ljava/lang/CharSequence;Ljdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
        Name  Flags
      src     
      buffer  

  public java.lang.StringBuilder normalizeSecondAndAppend(java.lang.StringBuilder, java.lang.CharSequence);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.StringBuilder first
        start local 2 // java.lang.CharSequence second
         0: .line 137
            aload 0 /* this */
            aload 1 /* first */
            aload 2 /* second */
            iconst_1
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.normalizeSecondAndAppend:(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder;
            areturn
        end local 2 // java.lang.CharSequence second
        end local 1 // java.lang.StringBuilder first
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    1     1   first  Ljava/lang/StringBuilder;
            0    1     2  second  Ljava/lang/CharSequence;
    MethodParameters:
        Name  Flags
      first   
      second  

  public java.lang.StringBuilder append(java.lang.StringBuilder, java.lang.CharSequence);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.StringBuilder first
        start local 2 // java.lang.CharSequence second
         0: .line 142
            aload 0 /* this */
            aload 1 /* first */
            aload 2 /* second */
            iconst_0
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.normalizeSecondAndAppend:(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder;
            areturn
        end local 2 // java.lang.CharSequence second
        end local 1 // java.lang.StringBuilder first
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    1     1   first  Ljava/lang/StringBuilder;
            0    1     2  second  Ljava/lang/CharSequence;
    MethodParameters:
        Name  Flags
      first   
      second  

  public java.lang.StringBuilder normalizeSecondAndAppend(java.lang.StringBuilder, java.lang.CharSequence, boolean);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/CharSequence;Z)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=4
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.StringBuilder first
        start local 2 // java.lang.CharSequence second
        start local 3 // boolean doNormalize
         0: .line 147
            aload 1 /* first */
            aload 2 /* second */
            if_acmpne 2
         1: .line 148
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
         3: .line 151
            aload 2 /* second */
            iload 3 /* doNormalize */
         4: .line 152
            new jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer
            dup
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            aload 1 /* first */
            aload 1 /* first */
            invokevirtual java.lang.StringBuilder.length:()I
            aload 2 /* second */
            invokeinterface java.lang.CharSequence.length:()I
            iadd
            invokespecial jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer.<init>:(Ljdk/internal/icu/impl/NormalizerImpl;Ljava/lang/Appendable;I)V
         5: .line 150
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.normalizeAndAppend:(Ljava/lang/CharSequence;ZLjdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;)V
         6: .line 153
            aload 1 /* first */
            areturn
        end local 3 // boolean doNormalize
        end local 2 // java.lang.CharSequence second
        end local 1 // java.lang.StringBuilder first
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    7     1        first  Ljava/lang/StringBuilder;
            0    7     2       second  Ljava/lang/CharSequence;
            0    7     3  doNormalize  Z
    MethodParameters:
             Name  Flags
      first        
      second       
      doNormalize  

  protected abstract void normalizeAndAppend(java.lang.CharSequence, boolean, jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer);
    descriptor: (Ljava/lang/CharSequence;ZLjdk/internal/icu/impl/NormalizerImpl$ReorderingBuffer;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      src          
      doNormalize  
      buffer       

  public java.lang.String getDecomposition(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // int c
         0: .line 161
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            iload 1 /* c */
            invokevirtual jdk.internal.icu.impl.NormalizerImpl.getDecomposition:(I)Ljava/lang/String;
            areturn
        end local 1 // int c
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    1     1     c  I
    MethodParameters:
      Name  Flags
      c     

  public int getCombiningClass(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // int c
         0: .line 166
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            aload 0 /* this */
            getfield jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.impl:Ljdk/internal/icu/impl/NormalizerImpl;
            iload 1 /* c */
            invokevirtual jdk.internal.icu.impl.NormalizerImpl.getNorm16:(I)I
            invokevirtual jdk.internal.icu.impl.NormalizerImpl.getCC:(I)I
            ireturn
        end local 1 // int c
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    1     1     c  I
    MethodParameters:
      Name  Flags
      c     

  public boolean isNormalized(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
        start local 1 // java.lang.CharSequence s
         0: .line 172
            aload 1 /* s */
            invokeinterface java.lang.CharSequence.length:()I
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl.spanQuickCheckYes:(Ljava/lang/CharSequence;)I
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.CharSequence s
        end local 0 // jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/icu/impl/Norm2AllModes$Normalizer2WithImpl;
            0    2     1     s  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "Norm2AllModes.java"
NestHost: jdk.internal.icu.impl.Norm2AllModes
InnerClasses:
  public abstract Normalizer2WithImpl = jdk.internal.icu.impl.Norm2AllModes$Normalizer2WithImpl of jdk.internal.icu.impl.Norm2AllModes
  public final ReorderingBuffer = jdk.internal.icu.impl.NormalizerImpl$ReorderingBuffer of jdk.internal.icu.impl.NormalizerImpl