public final class com.ctc.wstx.dtd.DTDIdAttr extends com.ctc.wstx.dtd.DTDAttribute
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.ctc.wstx.dtd.DTDIdAttr
  super_class: com.ctc.wstx.dtd.DTDAttribute
{
  public void <init>(com.ctc.wstx.util.PrefixedName, com.ctc.wstx.dtd.DefaultAttrValue, int, boolean, boolean);
    descriptor: (Lcom/ctc/wstx/util/PrefixedName;Lcom/ctc/wstx/dtd/DefaultAttrValue;IZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
        start local 1 // com.ctc.wstx.util.PrefixedName name
        start local 2 // com.ctc.wstx.dtd.DefaultAttrValue defValue
        start local 3 // int specIndex
        start local 4 // boolean nsAware
        start local 5 // boolean xml11
         0: .line 38
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* defValue */
            iload 3 /* specIndex */
            iload 4 /* nsAware */
            iload 5 /* xml11 */
            invokespecial com.ctc.wstx.dtd.DTDAttribute.<init>:(Lcom/ctc/wstx/util/PrefixedName;Lcom/ctc/wstx/dtd/DefaultAttrValue;IZZ)V
         1: .line 39
            return
        end local 5 // boolean xml11
        end local 4 // boolean nsAware
        end local 3 // int specIndex
        end local 2 // com.ctc.wstx.dtd.DefaultAttrValue defValue
        end local 1 // com.ctc.wstx.util.PrefixedName name
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/ctc/wstx/dtd/DTDIdAttr;
            0    2     1       name  Lcom/ctc/wstx/util/PrefixedName;
            0    2     2   defValue  Lcom/ctc/wstx/dtd/DefaultAttrValue;
            0    2     3  specIndex  I
            0    2     4    nsAware  Z
            0    2     5      xml11  Z
    MethodParameters:
           Name  Flags
      name       
      defValue   
      specIndex  
      nsAware    
      xml11      

  public com.ctc.wstx.dtd.DTDAttribute cloneWith(int);
    descriptor: (I)Lcom/ctc/wstx/dtd/DTDAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
        start local 1 // int specIndex
         0: .line 43
            new com.ctc.wstx.dtd.DTDIdAttr
            dup
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mName:Lcom/ctc/wstx/util/PrefixedName;
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mDefValue:Lcom/ctc/wstx/dtd/DefaultAttrValue;
            iload 1 /* specIndex */
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgNsAware:Z
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgXml11:Z
            invokespecial com.ctc.wstx.dtd.DTDIdAttr.<init>:(Lcom/ctc/wstx/util/PrefixedName;Lcom/ctc/wstx/dtd/DefaultAttrValue;IZZ)V
            areturn
        end local 1 // int specIndex
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/ctc/wstx/dtd/DTDIdAttr;
            0    1     1  specIndex  I
    MethodParameters:
           Name  Flags
      specIndex  

  public int getValueType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
         0: .line 54
            iconst_2
            ireturn
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/ctc/wstx/dtd/DTDIdAttr;

  public boolean typeIsId();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
         0: .line 59
            iconst_1
            ireturn
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/ctc/wstx/dtd/DTDIdAttr;

  public java.lang.String validate(com.ctc.wstx.dtd.DTDValidatorBase, char[], int, int, boolean);
    descriptor: (Lcom/ctc/wstx/dtd/DTDValidatorBase;[CIIZ)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=12, args_size=6
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
        start local 1 // com.ctc.wstx.dtd.DTDValidatorBase v
        start local 2 // char[] cbuf
        start local 3 // int start
        start local 4 // int end
        start local 5 // boolean normalize
         0: .line 79
            goto 2
         1: .line 80
      StackMap locals:
      StackMap stack:
            iinc 3 /* start */ 1
         2: .line 79
      StackMap locals:
      StackMap stack:
            iload 3 /* start */
            iload 4 /* end */
            if_icmpge 3
            aload 2 /* cbuf */
            iload 3 /* start */
            caload
            invokestatic com.ctc.wstx.io.WstxInputData.isSpaceChar:(C)Z
            ifne 1
         3: .line 84
      StackMap locals:
      StackMap stack:
            iload 3 /* start */
            iload 4 /* end */
            if_icmplt 5
         4: .line 85
            aload 0 /* this */
            aload 1 /* v */
            ldc "Empty ID value"
            invokevirtual com.ctc.wstx.dtd.DTDIdAttr.reportValidationProblem:(Lcom/ctc/wstx/dtd/DTDValidatorBase;Ljava/lang/String;)Ljava/lang/String;
            areturn
         5: .line 87
      StackMap locals:
      StackMap stack:
            iinc 4 /* end */ -1
         6: .line 88
            goto 8
         7: .line 89
      StackMap locals:
      StackMap stack:
            iinc 4 /* end */ -1
         8: .line 88
      StackMap locals:
      StackMap stack:
            iload 4 /* end */
            iload 3 /* start */
            if_icmple 9
            aload 2 /* cbuf */
            iload 4 /* end */
            caload
            invokestatic com.ctc.wstx.io.WstxInputData.isSpaceChar:(C)Z
            ifne 7
         9: .line 93
      StackMap locals:
      StackMap stack:
            aload 2 /* cbuf */
            iload 3 /* start */
            caload
            istore 6 /* c */
        start local 6 // char c
        10: .line 94
            iload 6 /* c */
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgNsAware:Z
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgXml11:Z
            invokestatic com.ctc.wstx.io.WstxInputData.isNameStartChar:(CZZ)Z
            ifne 12
        11: .line 95
            aload 0 /* this */
            aload 1 /* v */
            iload 6 /* c */
            ldc "not valid as the first ID character"
            invokevirtual com.ctc.wstx.dtd.DTDIdAttr.reportInvalidChar:(Lcom/ctc/wstx/dtd/DTDValidatorBase;CLjava/lang/String;)Ljava/lang/String;
            areturn
        12: .line 97
      StackMap locals: int
      StackMap stack:
            iload 6 /* c */
            istore 7 /* hash */
        start local 7 // int hash
        13: .line 98
            iload 3 /* start */
            iconst_1
            iadd
            istore 8 /* i */
        start local 8 // int i
        14: goto 20
        15: .line 99
      StackMap locals: int int
      StackMap stack:
            aload 2 /* cbuf */
            iload 8 /* i */
            caload
            istore 6 /* c */
        16: .line 100
            iload 6 /* c */
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgNsAware:Z
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mCfgXml11:Z
            invokestatic com.ctc.wstx.io.WstxInputData.isNameChar:(CZZ)Z
            ifne 18
        17: .line 101
            aload 0 /* this */
            aload 1 /* v */
            iload 6 /* c */
            ldc "not valid as an ID character"
            invokevirtual com.ctc.wstx.dtd.DTDIdAttr.reportInvalidChar:(Lcom/ctc/wstx/dtd/DTDValidatorBase;CLjava/lang/String;)Ljava/lang/String;
            areturn
        18: .line 103
      StackMap locals:
      StackMap stack:
            iload 7 /* hash */
            bipush 31
            imul
            iload 6 /* c */
            iadd
            istore 7 /* hash */
        19: .line 98
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 8 /* i */
            iload 4 /* end */
            if_icmple 15
        end local 8 // int i
        21: .line 107
            aload 1 /* v */
            invokevirtual com.ctc.wstx.dtd.DTDValidatorBase.getIdMap:()Lcom/ctc/wstx/util/ElementIdMap;
            astore 8 /* m */
        start local 8 // com.ctc.wstx.util.ElementIdMap m
        22: .line 108
            aload 1 /* v */
            invokevirtual com.ctc.wstx.dtd.DTDValidatorBase.getElemName:()Lcom/ctc/wstx/util/PrefixedName;
            astore 9 /* elemName */
        start local 9 // com.ctc.wstx.util.PrefixedName elemName
        23: .line 109
            aload 1 /* v */
            invokevirtual com.ctc.wstx.dtd.DTDValidatorBase.getLocation:()Ljavax/xml/stream/Location;
            astore 10 /* loc */
        start local 10 // javax.xml.stream.Location loc
        24: .line 110
            aload 8 /* m */
            aload 2 /* cbuf */
            iload 3 /* start */
            iload 4 /* end */
            iload 3 /* start */
            isub
            iconst_1
            iadd
            iload 7 /* hash */
        25: .line 111
            aload 10 /* loc */
            aload 9 /* elemName */
            aload 0 /* this */
            getfield com.ctc.wstx.dtd.DTDIdAttr.mName:Lcom/ctc/wstx/util/PrefixedName;
        26: .line 110
            invokevirtual com.ctc.wstx.util.ElementIdMap.addDefined:([CIIILjavax/xml/stream/Location;Lcom/ctc/wstx/util/PrefixedName;Lcom/ctc/wstx/util/PrefixedName;)Lcom/ctc/wstx/util/ElementId;
            astore 11 /* id */
        start local 11 // com.ctc.wstx.util.ElementId id
        27: .line 114
            aload 11 /* id */
            invokevirtual com.ctc.wstx.util.ElementId.getLocation:()Ljavax/xml/stream/Location;
            aload 10 /* loc */
            if_acmpeq 31
        28: .line 115
            aload 0 /* this */
            aload 1 /* v */
            new java.lang.StringBuilder
            dup
            ldc "Duplicate id '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* id */
            invokevirtual com.ctc.wstx.util.ElementId.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "', first declared at "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        29: .line 116
            aload 11 /* id */
            invokevirtual com.ctc.wstx.util.ElementId.getLocation:()Ljavax/xml/stream/Location;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        30: .line 115
            invokevirtual com.ctc.wstx.dtd.DTDIdAttr.reportValidationProblem:(Lcom/ctc/wstx/dtd/DTDValidatorBase;Ljava/lang/String;)Ljava/lang/String;
            areturn
        31: .line 119
      StackMap locals: com.ctc.wstx.dtd.DTDIdAttr com.ctc.wstx.dtd.DTDValidatorBase char[] int int int int int com.ctc.wstx.util.ElementIdMap com.ctc.wstx.util.PrefixedName javax.xml.stream.Location com.ctc.wstx.util.ElementId
      StackMap stack:
            iload 5 /* normalize */
            ifeq 33
        32: .line 120
            aload 11 /* id */
            invokevirtual com.ctc.wstx.util.ElementId.getId:()Ljava/lang/String;
            areturn
        33: .line 122
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 11 // com.ctc.wstx.util.ElementId id
        end local 10 // javax.xml.stream.Location loc
        end local 9 // com.ctc.wstx.util.PrefixedName elemName
        end local 8 // com.ctc.wstx.util.ElementIdMap m
        end local 7 // int hash
        end local 6 // char c
        end local 5 // boolean normalize
        end local 4 // int end
        end local 3 // int start
        end local 2 // char[] cbuf
        end local 1 // com.ctc.wstx.dtd.DTDValidatorBase v
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   34     0       this  Lcom/ctc/wstx/dtd/DTDIdAttr;
            0   34     1          v  Lcom/ctc/wstx/dtd/DTDValidatorBase;
            0   34     2       cbuf  [C
            0   34     3      start  I
            0   34     4        end  I
            0   34     5  normalize  Z
           10   34     6          c  C
           13   34     7       hash  I
           14   21     8          i  I
           22   34     8          m  Lcom/ctc/wstx/util/ElementIdMap;
           23   34     9   elemName  Lcom/ctc/wstx/util/PrefixedName;
           24   34    10        loc  Ljavax/xml/stream/Location;
           27   34    11         id  Lcom/ctc/wstx/util/ElementId;
    Exceptions:
      throws javax.xml.stream.XMLStreamException
    MethodParameters:
           Name  Flags
      v          
      cbuf       
      start      
      end        
      normalize  

  public void validateDefault(com.ctc.wstx.sr.InputProblemReporter, boolean);
    descriptor: (Lcom/ctc/wstx/sr/InputProblemReporter;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.ctc.wstx.dtd.DTDIdAttr this
        start local 1 // com.ctc.wstx.sr.InputProblemReporter rep
        start local 2 // boolean normalize
         0: .line 134
            new java.lang.IllegalStateException
            dup
            getstatic com.ctc.wstx.cfg.ErrorConsts.ERR_INTERNAL:Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // boolean normalize
        end local 1 // com.ctc.wstx.sr.InputProblemReporter rep
        end local 0 // com.ctc.wstx.dtd.DTDIdAttr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/ctc/wstx/dtd/DTDIdAttr;
            0    1     1        rep  Lcom/ctc/wstx/sr/InputProblemReporter;
            0    1     2  normalize  Z
    MethodParameters:
           Name  Flags
      rep        
      normalize  
}
SourceFile: "DTDIdAttr.java"