public class org.eclipse.jdt.internal.compiler.ast.FloatLiteral extends org.eclipse.jdt.internal.compiler.ast.NumberLiteral
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.compiler.ast.FloatLiteral
  super_class: org.eclipse.jdt.internal.compiler.ast.NumberLiteral
{
  float value;
    descriptor: F
    flags: (0x0000) 

  public void <init>(char[], int, int);
    descriptor: ([CII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
        start local 1 // char[] token
        start local 2 // int s
        start local 3 // int e
         0: .line 29
            aload 0 /* this */
            aload 1 /* token */
            iload 2 /* s */
            iload 3 /* e */
            invokespecial org.eclipse.jdt.internal.compiler.ast.NumberLiteral.<init>:([CII)V
         1: .line 30
            return
        end local 3 // int e
        end local 2 // int s
        end local 1 // char[] token
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;
            0    2     1  token  [C
            0    2     2      s  I
            0    2     3      e  I
    MethodParameters:
       Name  Flags
      token  
      s      
      e      

  public void computeConstant();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
         0: .line 35
            bipush 95
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[C)I
            ifle 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* containsUnderscores */
        start local 2 // boolean containsUnderscores
         3: .line 36
            iload 2 /* containsUnderscores */
            ifeq 5
         4: .line 38
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            bipush 95
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.remove:([CC)[C
            putfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
         5: .line 41
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.FloatLiteral top int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            invokestatic java.lang.String.valueOf:([C)Ljava/lang/String;
            invokestatic java.lang.Float.valueOf:(Ljava/lang/String;)Ljava/lang/Float;
            astore 1 /* computedValue */
        start local 1 // java.lang.Float computedValue
         6: .line 42
            goto 18
        end local 1 // java.lang.Float computedValue
      StackMap locals:
      StackMap stack: java.lang.NumberFormatException
         7: pop
         8: .line 46
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            invokestatic org.eclipse.jdt.internal.compiler.util.FloatUtil.valueOfHexFloatLiteral:([C)F
            fstore 3 /* v */
        start local 3 // float v
         9: .line 47
            fload 3 /* v */
            ldc Infinity
            fcmpl
            ifne 11
        10: .line 49
            return
        11: .line 51
      StackMap locals: float
      StackMap stack:
            fload 3 /* v */
            invokestatic java.lang.Float.isNaN:(F)Z
            ifeq 13
        12: .line 53
            return
        13: .line 55
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 3 /* v */
            putfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.value:F
        14: .line 56
            aload 0 /* this */
            fload 3 /* v */
            invokestatic org.eclipse.jdt.internal.compiler.impl.FloatConstant.fromValue:(F)Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            putfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.constant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
        end local 3 // float v
        15: .line 57
            goto 17
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.FloatLiteral top int
      StackMap stack: java.lang.NumberFormatException
        16: pop
        17: .line 60
      StackMap locals:
      StackMap stack:
            return
        start local 1 // java.lang.Float computedValue
        18: .line 62
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.FloatLiteral java.lang.Float int
      StackMap stack:
            aload 1 /* computedValue */
            invokevirtual java.lang.Float.floatValue:()F
            fstore 3 /* floatValue */
        start local 3 // float floatValue
        19: .line 63
            fload 3 /* floatValue */
            ldc 3.4028235E38
            fcmpl
            ifle 21
        20: .line 65
            return
        21: .line 67
      StackMap locals: float
      StackMap stack:
            fload 3 /* floatValue */
            ldc 1.4E-45
            fcmpg
            ifge 35
        22: .line 71
            iconst_0
            istore 4 /* isHexaDecimal */
        start local 4 // boolean isHexaDecimal
        23: .line 72
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        24: goto 34
        25: .line 73
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            iload 5 /* i */
            caload
            lookupswitch { // 12
                   46: 26
                   48: 26
                   68: 29
                   69: 29
                   70: 29
                   80: 31
                   88: 27
                  100: 29
                  101: 29
                  102: 29
                  112: 31
                  120: 27
              default: 32
          }
        26: .line 76
      StackMap locals:
      StackMap stack:
            goto 33
        27: .line 79
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* isHexaDecimal */
        28: .line 80
            goto 33
        29: .line 87
      StackMap locals:
      StackMap stack:
            iload 4 /* isHexaDecimal */
            ifeq 35
        30: .line 88
            return
        31: .line 95
      StackMap locals:
      StackMap stack:
            goto 35
        32: .line 98
      StackMap locals:
      StackMap stack:
            return
        33: .line 72
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 5 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.source:[C
            arraylength
            if_icmplt 25
        end local 5 // int i
        end local 4 // boolean isHexaDecimal
        35: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 3 /* floatValue */
            putfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.value:F
        36: .line 103
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.value:F
            invokestatic org.eclipse.jdt.internal.compiler.impl.FloatConstant.fromValue:(F)Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            putfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.constant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
        37: .line 104
            return
        end local 3 // float floatValue
        end local 2 // boolean containsUnderscores
        end local 1 // java.lang.Float computedValue
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   38     0                 this  Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;
            6    7     1        computedValue  Ljava/lang/Float;
           18   38     1        computedValue  Ljava/lang/Float;
            3   38     2  containsUnderscores  Z
            9   15     3                    v  F
           19   38     3           floatValue  F
           23   35     4        isHexaDecimal  Z
           24   35     5                    i  I
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.NumberFormatException
           8    10      16  Class java.lang.NumberFormatException
          11    12      16  Class java.lang.NumberFormatException
          13    15      16  Class java.lang.NumberFormatException

  public void generateCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        start local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        start local 3 // boolean valueRequired
         0: .line 115
            aload 2 /* codeStream */
            getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
            istore 4 /* pc */
        start local 4 // int pc
         1: .line 116
            iload 3 /* valueRequired */
            ifeq 3
         2: .line 117
            aload 2 /* codeStream */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.constant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.implicitConversion:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.generateConstant:(Lorg/eclipse/jdt/internal/compiler/impl/Constant;I)V
         3: .line 119
      StackMap locals: int
      StackMap stack:
            aload 2 /* codeStream */
            iload 4 /* pc */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FloatLiteral.sourceStart:I
            invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
         4: .line 120
            return
        end local 4 // int pc
        end local 3 // boolean valueRequired
        end local 2 // org.eclipse.jdt.internal.compiler.codegen.CodeStream codeStream
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope currentScope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;
            0    5     1   currentScope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            0    5     2     codeStream  Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
            0    5     3  valueRequired  Z
            1    5     4             pc  I
    MethodParameters:
               Name  Flags
      currentScope   
      codeStream     
      valueRequired  

  public org.eclipse.jdt.internal.compiler.lookup.TypeBinding literalType(org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 124
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.FLOAT:Lorg/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding;
            areturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;
            0    1     1  scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
       Name  Flags
      scope  

  public void traverse(org.eclipse.jdt.internal.compiler.ASTVisitor, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
        start local 1 // org.eclipse.jdt.internal.compiler.ASTVisitor visitor
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
         0: .line 129
            aload 1 /* visitor */
            aload 0 /* this */
            aload 2 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.visit:(Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
            pop
         1: .line 130
            aload 1 /* visitor */
            aload 0 /* this */
            aload 2 /* scope */
            invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.endVisit:(Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
         2: .line 131
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BlockScope scope
        end local 1 // org.eclipse.jdt.internal.compiler.ASTVisitor visitor
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FloatLiteral this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/eclipse/jdt/internal/compiler/ast/FloatLiteral;
            0    3     1  visitor  Lorg/eclipse/jdt/internal/compiler/ASTVisitor;
            0    3     2    scope  Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
    MethodParameters:
         Name  Flags
      visitor  
      scope    
}
SourceFile: "FloatLiteral.java"