private static void ConcatFormatValue <T>(this StringBuilder string_builder, T arg, uint padding, uint base_value, uint decimal_places) where T : IConvertible { TypeCode typeCode = arg.GetTypeCode(); switch (typeCode) { case 9: string_builder.Concat(arg.ToInt32(NumberFormatInfo.get_CurrentInfo()), padding, '0', base_value); return; case 10: string_builder.Concat(arg.ToUInt32(NumberFormatInfo.get_CurrentInfo()), padding, '0', base_value); return; case 11: case 12: IL_2B: if (typeCode != 18) { return; } string_builder.Append(Convert.ToString(arg)); return; case 13: string_builder.Concat(arg.ToSingle(NumberFormatInfo.get_CurrentInfo()), decimal_places, padding, '0'); return; } goto IL_2B; }