@@ -1230,25 +1230,20 @@ fn do_cformat_specifier(
1230
1230
}
1231
1231
Ok ( format_spec. format_number ( objint:: get_value ( & obj) ) )
1232
1232
}
1233
- CFormatType :: Float ( _) => {
1234
- let result = if objtype:: isinstance ( & obj, & vm. ctx . float_type ( ) ) {
1235
- format_spec. format_float ( objfloat:: get_value ( & obj) )
1236
- } else if objtype:: isinstance ( & obj, & vm. ctx . int_type ( ) ) {
1237
- format_spec. format_float ( objint:: get_value ( & obj) . to_f64 ( ) . unwrap ( ) )
1238
- } else {
1239
- let required_type_string = "an floating point or integer" ;
1240
- return Err ( vm. new_type_error ( format ! (
1241
- "%{} format: {} is required, not {}" ,
1242
- format_spec. format_char,
1243
- required_type_string,
1244
- obj. class( )
1245
- ) ) ) ;
1246
- } ;
1247
- match result {
1248
- Ok ( transformed) => Ok ( transformed) ,
1249
- Err ( error) => Err ( vm. new_not_implemented_error ( error) ) ,
1250
- }
1233
+ CFormatType :: Float ( _) => if objtype:: isinstance ( & obj, & vm. ctx . float_type ( ) ) {
1234
+ format_spec. format_float ( objfloat:: get_value ( & obj) )
1235
+ } else if objtype:: isinstance ( & obj, & vm. ctx . int_type ( ) ) {
1236
+ format_spec. format_float ( objint:: get_value ( & obj) . to_f64 ( ) . unwrap ( ) )
1237
+ } else {
1238
+ let required_type_string = "an floating point or integer" ;
1239
+ return Err ( vm. new_type_error ( format ! (
1240
+ "%{} format: {} is required, not {}" ,
1241
+ format_spec. format_char,
1242
+ required_type_string,
1243
+ obj. class( )
1244
+ ) ) ) ;
1251
1245
}
1246
+ . map_err ( |e| vm. new_not_implemented_error ( e) ) ,
1252
1247
CFormatType :: Character => {
1253
1248
let char_string = {
1254
1249
if objtype:: isinstance ( & obj, & vm. ctx . int_type ( ) ) {
0 commit comments