test_class.file: strings/src/test/java/org/cthul/strings/format/conversion/RomansConversionTest.java
test_class.identifier: RomansConversionTest
test_case.body: @Test
      public void test_max_value() {
          RomansConversion c = new RomansConversion(new Romans("i", "v", "x"));
          assertThat(format(c, 44, null, -1, -1), is("xxxxiv"));
      }
test_case.class_method_signature: RomansConversionTest.test_max_value()
test_case.full_signature: @Test public void test_max_value()
test_case.identifier: test_max_value
test_case.invocations: assertThat format is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void test_max_value()
focal_class.declarator: R0 = new Romans(new String[]{"i", "v", "x", "l", "c", "d", "m"}, "n", Romans.DIGITS_SIMPLE)
focal_class.modifier: private static final
focal_class.original_string: private static final Romans R0 = new Romans(new String[]{"i", "v", "x", "l", "c", "d", "m"}, "n", Romans.DIGITS_SIMPLE);
focal_class.type: Romans
focal_class.var_name: R0
focal_class.declarator: R  = new Romans(new String[]{"i", "v", "x", "l", "c", "d", "m"}, "n", Romans.DIGITS)
focal_class.modifier: private static final
focal_class.original_string: private static final Romans R  = new Romans(new String[]{"i", "v", "x", "l", "c", "d", "m"}, "n", Romans.DIGITS);
focal_class.type: Romans
focal_class.var_name: R
focal_class.declarator: INSTANCE = new RomansConversion()
focal_class.modifier: public static final
focal_class.original_string: public static final RomansConversion INSTANCE = new RomansConversion();
focal_class.type: RomansConversion
focal_class.var_name: INSTANCE
focal_class.declarator: maxL
focal_class.modifier: private final
focal_class.original_string: private final String maxL;
focal_class.type: String
focal_class.var_name: maxL
focal_class.declarator: maxVal
focal_class.modifier: private final
focal_class.original_string: private final long maxVal;
focal_class.type: long
focal_class.var_name: maxVal
focal_class.declarator: r
focal_class.modifier: private final
focal_class.original_string: private final Romans r;
focal_class.type: Romans
focal_class.var_name: r
focal_class.declarator: r0
focal_class.modifier: private final
focal_class.original_string: private final Romans r0;
focal_class.type: Romans
focal_class.var_name: r0
focal_class.file: strings/src/main/java/org/cthul/strings/format/conversion/RomansConversion.java
focal_class.identifier: RomansConversion
focal_class.class_method_signature: RomansConversion.RomansConversion()
focal_class.full_signature: public  RomansConversion()
focal_class.identifier: RomansConversion
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  RomansConversion()
focal_class.class_method_signature: RomansConversion.RomansConversion(Romans r)
focal_class.full_signature: public  RomansConversion(Romans r)
focal_class.identifier: RomansConversion
focal_class.modifiers: public
focal_class.parameters: (Romans r)
focal_class.signature:  RomansConversion(Romans r)
focal_class.class_method_signature: RomansConversion.RomansConversion(Romans r, Romans r0)
focal_class.full_signature: public  RomansConversion(Romans r, Romans r0)
focal_class.identifier: RomansConversion
focal_class.modifiers: public
focal_class.parameters: (Romans r, Romans r0)
focal_class.signature:  RomansConversion(Romans r, Romans r0)
focal_class.class_method_signature: RomansConversion.register(FormatterConfiguration conf)
focal_class.full_signature: public void register(FormatterConfiguration conf)
focal_class.identifier: register
focal_class.modifiers: public
focal_class.parameters: (FormatterConfiguration conf)
focal_class.return: void
focal_class.signature: void register(FormatterConfiguration conf)
focal_class.class_method_signature: RomansConversion.format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_class.full_signature: @Override protected int format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_class.identifier: format
focal_class.modifiers: @Override protected
focal_class.parameters: (Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_class.return: int
focal_class.signature: int format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_class.superclass: extends FormatAlignmentBase
focal_method.body: @Override
      protected int format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position) throws IOException {
          if (precision > 2) {
              throw FormatException.precisionTooHigh(getFormatName(), precision, 2);
          }
          int i = cast(value, Number.class).intValue();
          while (i > maxVal) {
              a.append(maxL);
              i -= maxVal;
          }
          final StringBuilder sb = (a instanceof StringBuilder) ? 
                                      (StringBuilder) a : new StringBuilder();
          switch (precision) {
              case 0:
                  if (r0 == null)
                      throw FormatException.illegalPrecision(
                              getFormatName() + "(zero-precision not configured)", 
                              0, 1, 2);
                  r0.toRoman(sb, i);
                  break;
              case 2:
                  r.toRoman2(sb, i);
                  break;
              default:
                  r.toRoman(sb, i);
          }
          if (sb != a) a.append(sb);
          return 0;
      }
focal_method.class_method_signature: RomansConversion.format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_method.full_signature: @Override protected int format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_method.identifier: format
focal_method.invocations: precisionTooHigh getFormatName intValue cast append illegalPrecision getFormatName toRoman toRoman2 toRoman append
focal_method.modifiers: @Override protected
focal_method.parameters: (Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)
focal_method.return: int
focal_method.signature: int format(Appendable a, Object value, Locale locale, String flags, int precision, String formatString, int position)