View Javadoc

1   package com.sharkysoft.printf;
2   
3   import java.math.BigDecimal;
4   import com.sharkysoft.math.MathToolbox;
5   
6   final class Formatter_g_Bi extends Formatter_g
7   {
8   
9     Formatter_g_Bi(final FormatSpecifier ipPfs)
10    {
11      super(ipPfs);
12    }
13  
14    void format(final PrintfState ipPs)
15    {
16      adjustWidthAndPrecision(ipPs);
17      if 
18      ( shouldUseScientific
19        ( MathToolbox.toScientificNotation
20          ( ((BigDecimal) ipPs.mapArgs[ipPs.mnArgIndex]).doubleValue()
21          )
22        )
23      )
24        formatBigDecimalScientific(ipPs);
25      else
26        formatBigDecimal(ipPs);
27    }
28  
29      Class[] argTypes() {
30          Class[] types = super.argTypes();
31          types[0] = BigDecimal.class;
32          return types;
33      }
34  }
35