@@ -10,19 +10,19 @@ use crate::formatteriteminfo::{FormatWriter, FormatterItemInfo};
1010pub static FORMAT_ITEM_F16 : FormatterItemInfo = FormatterItemInfo {
1111 byte_size : 2 ,
1212 print_width : 10 ,
13- formatter : FormatWriter :: FloatWriter ( format_item_flo16 ) ,
13+ formatter : FormatWriter :: FloatWriter ( format_item_f16 ) ,
1414} ;
1515
1616pub static FORMAT_ITEM_F32 : FormatterItemInfo = FormatterItemInfo {
1717 byte_size : 4 ,
1818 print_width : 15 ,
19- formatter : FormatWriter :: FloatWriter ( format_item_flo32 ) ,
19+ formatter : FormatWriter :: FloatWriter ( format_item_f32 ) ,
2020} ;
2121
2222pub static FORMAT_ITEM_F64 : FormatterItemInfo = FormatterItemInfo {
2323 byte_size : 8 ,
2424 print_width : 25 ,
25- formatter : FormatWriter :: FloatWriter ( format_item_flo64 ) ,
25+ formatter : FormatWriter :: FloatWriter ( format_item_f64 ) ,
2626} ;
2727
2828pub static FORMAT_ITEM_BF16 : FormatterItemInfo = FormatterItemInfo {
@@ -31,19 +31,19 @@ pub static FORMAT_ITEM_BF16: FormatterItemInfo = FormatterItemInfo {
3131 formatter : FormatWriter :: BFloatWriter ( format_item_bf16) ,
3232} ;
3333
34- pub fn format_item_flo16 ( f : f64 ) -> String {
35- format ! ( " {}" , format_flo16 ( f16:: from_f64( f) ) )
34+ pub fn format_item_f16 ( f : f64 ) -> String {
35+ format ! ( " {}" , format_f16 ( f16:: from_f64( f) ) )
3636}
3737
38- pub fn format_item_flo32 ( f : f64 ) -> String {
39- format ! ( " {}" , format_flo32 ( f as f32 ) )
38+ pub fn format_item_f32 ( f : f64 ) -> String {
39+ format ! ( " {}" , format_f32 ( f as f32 ) )
4040}
4141
42- pub fn format_item_flo64 ( f : f64 ) -> String {
43- format ! ( " {}" , format_flo64 ( f) )
42+ pub fn format_item_f64 ( f : f64 ) -> String {
43+ format ! ( " {}" , format_f64 ( f) )
4444}
4545
46- fn format_flo32_exp ( f : f32 , width : usize ) -> String {
46+ fn format_f32_exp ( f : f32 , width : usize ) -> String {
4747 if f. abs ( ) . log10 ( ) < 0.0 {
4848 return format ! ( "{f:width$e}" ) ;
4949 }
@@ -52,7 +52,7 @@ fn format_flo32_exp(f: f32, width: usize) -> String {
5252 formatted. replace ( 'e' , "e+" )
5353}
5454
55- fn format_flo64_exp ( f : f64 , width : usize ) -> String {
55+ fn format_f64_exp ( f : f64 , width : usize ) -> String {
5656 if f. abs ( ) . log10 ( ) < 0.0 {
5757 return format ! ( "{f:width$e}" ) ;
5858 }
@@ -61,7 +61,7 @@ fn format_flo64_exp(f: f64, width: usize) -> String {
6161 formatted. replace ( 'e' , "e+" )
6262}
6363
64- fn format_flo64_exp_precision ( f : f64 , width : usize , precision : usize ) -> String {
64+ fn format_f64_exp_precision ( f : f64 , width : usize , precision : usize ) -> String {
6565 if f. abs ( ) . log10 ( ) < 0.0 {
6666 return format ! ( "{f:width$.precision$e}" ) ;
6767 }
@@ -71,28 +71,28 @@ fn format_flo64_exp_precision(f: f64, width: usize, precision: usize) -> String
7171}
7272
7373pub fn format_item_bf16 ( f : f64 ) -> String {
74- format ! ( " {}" , format_flo32 ( f as f32 ) )
74+ format ! ( " {}" , format_f32 ( f as f32 ) )
7575}
7676
77- fn format_flo16 ( f : f16 ) -> String {
77+ fn format_f16 ( f : f16 ) -> String {
7878 format_float ( f64:: from ( f) , 9 , 4 )
7979}
8080
8181/// formats float with 8 significant digits, eg 12345678 or -1.2345678e+12
8282/// always returns a string of 14 characters
83- fn format_flo32 ( f : f32 ) -> String {
83+ fn format_f32 ( f : f32 ) -> String {
8484 let width: usize = 14 ;
8585 let precision: usize = 8 ;
8686
8787 if f. classify ( ) == FpCategory :: Subnormal {
8888 // subnormal numbers will be normal as f64, so will print with a wrong precision
89- format_flo32_exp ( f, width) // subnormal numbers
89+ format_f32_exp ( f, width) // subnormal numbers
9090 } else {
9191 format_float ( f64:: from ( f) , width, precision)
9292 }
9393}
9494
95- fn format_flo64 ( f : f64 ) -> String {
95+ fn format_f64 ( f : f64 ) -> String {
9696 format_float ( f, 24 , 17 )
9797}
9898
@@ -104,7 +104,7 @@ fn format_float(f: f64, width: usize, precision: usize) -> String {
104104 if f == 0.0 || !f. is_finite ( ) {
105105 return format ! ( "{f:width$}" ) ;
106106 }
107- return format_flo64_exp ( f, width) ; // subnormal numbers
107+ return format_f64_exp ( f, width) ; // subnormal numbers
108108 }
109109
110110 let mut l = f. abs ( ) . log10 ( ) . floor ( ) as i32 ;
@@ -120,143 +120,143 @@ fn format_float(f: f64, width: usize, precision: usize) -> String {
120120 } else if l == -1 {
121121 format ! ( "{f:width$.precision$}" )
122122 } else {
123- return format_flo64_exp_precision ( f, width, precision - 1 ) ; // subnormal numbers
123+ return format_f64_exp_precision ( f, width, precision - 1 ) ; // subnormal numbers
124124 }
125125}
126126
127127#[ test]
128128#[ allow( clippy:: excessive_precision) ]
129129#[ allow( clippy:: cognitive_complexity) ]
130- fn test_format_flo32 ( ) {
131- assert_eq ! ( format_flo32 ( 1.0 ) , " 1.0000000" ) ;
132- assert_eq ! ( format_flo32 ( 9.999_999_0 ) , " 9.9999990" ) ;
133- assert_eq ! ( format_flo32 ( 10.0 ) , " 10.000000" ) ;
134- assert_eq ! ( format_flo32 ( 99.999_977 ) , " 99.999977" ) ;
135- assert_eq ! ( format_flo32 ( 99.999_992 ) , " 99.999992" ) ;
136- assert_eq ! ( format_flo32 ( 100.0 ) , " 100.00000" ) ;
137- assert_eq ! ( format_flo32 ( 999.99994 ) , " 999.99994" ) ;
138- assert_eq ! ( format_flo32 ( 1000.0 ) , " 1000.0000" ) ;
139- assert_eq ! ( format_flo32 ( 9999.9990 ) , " 9999.9990" ) ;
140- assert_eq ! ( format_flo32 ( 10000.0 ) , " 10000.000" ) ;
141- assert_eq ! ( format_flo32 ( 99999.992 ) , " 99999.992" ) ;
142- assert_eq ! ( format_flo32 ( 100_000.0 ) , " 100000.00" ) ;
143- assert_eq ! ( format_flo32 ( 999_999.94 ) , " 999999.94" ) ;
144- assert_eq ! ( format_flo32 ( 1_000_000.0 ) , " 1000000.0" ) ;
145- assert_eq ! ( format_flo32 ( 9_999_999.0 ) , " 9999999.0" ) ;
146- assert_eq ! ( format_flo32 ( 10_000_000.0 ) , " 10000000" ) ;
147- assert_eq ! ( format_flo32 ( 99_999_992.0 ) , " 99999992" ) ;
148- assert_eq ! ( format_flo32 ( 100_000_000.0 ) , " 1.0000000e+8" ) ;
149- assert_eq ! ( format_flo32 ( 9.999_999_4e8 ) , " 9.9999994e+8" ) ;
150- assert_eq ! ( format_flo32 ( 1.0e9 ) , " 1.0000000e+9" ) ;
151- assert_eq ! ( format_flo32 ( 9.999_999_0e9 ) , " 9.9999990e+9" ) ;
152- assert_eq ! ( format_flo32 ( 1.0e10 ) , " 1.0000000e+10" ) ;
153-
154- assert_eq ! ( format_flo32 ( 0.1 ) , " 0.10000000" ) ;
155- assert_eq ! ( format_flo32 ( 0.999_999_94 ) , " 0.99999994" ) ;
156- assert_eq ! ( format_flo32 ( 0.010_000_001 ) , " 1.0000001e-2" ) ;
157- assert_eq ! ( format_flo32 ( 0.099_999_994 ) , " 9.9999994e-2" ) ;
158- assert_eq ! ( format_flo32 ( 0.001 ) , " 1.0000000e-3" ) ;
159- assert_eq ! ( format_flo32 ( 0.009_999_999_8 ) , " 9.9999998e-3" ) ;
160-
161- assert_eq ! ( format_flo32 ( -1.0 ) , " -1.0000000" ) ;
162- assert_eq ! ( format_flo32 ( -9.999_999_0 ) , " -9.9999990" ) ;
163- assert_eq ! ( format_flo32 ( -10.0 ) , " -10.000000" ) ;
164- assert_eq ! ( format_flo32 ( -99.999_977 ) , " -99.999977" ) ;
165- assert_eq ! ( format_flo32 ( -99.999_992 ) , " -99.999992" ) ;
166- assert_eq ! ( format_flo32 ( -100.0 ) , " -100.00000" ) ;
167- assert_eq ! ( format_flo32 ( -999.99994 ) , " -999.99994" ) ;
168- assert_eq ! ( format_flo32 ( -1000.0 ) , " -1000.0000" ) ;
169- assert_eq ! ( format_flo32 ( -9999.9990 ) , " -9999.9990" ) ;
170- assert_eq ! ( format_flo32 ( -10000.0 ) , " -10000.000" ) ;
171- assert_eq ! ( format_flo32 ( -99999.992 ) , " -99999.992" ) ;
172- assert_eq ! ( format_flo32 ( -100_000.0 ) , " -100000.00" ) ;
173- assert_eq ! ( format_flo32 ( -999_999.94 ) , " -999999.94" ) ;
174- assert_eq ! ( format_flo32 ( -1_000_000.0 ) , " -1000000.0" ) ;
175- assert_eq ! ( format_flo32 ( -9_999_999.0 ) , " -9999999.0" ) ;
176- assert_eq ! ( format_flo32 ( -10_000_000.0 ) , " -10000000" ) ;
177- assert_eq ! ( format_flo32 ( -99_999_992.0 ) , " -99999992" ) ;
178- assert_eq ! ( format_flo32 ( -100_000_000.0 ) , " -1.0000000e+8" ) ;
179- assert_eq ! ( format_flo32 ( -9.999_999_4e8 ) , " -9.9999994e+8" ) ;
180- assert_eq ! ( format_flo32 ( -1.0e9 ) , " -1.0000000e+9" ) ;
181- assert_eq ! ( format_flo32 ( -9.999_999_0e9 ) , " -9.9999990e+9" ) ;
182- assert_eq ! ( format_flo32 ( -1.0e10 ) , "-1.0000000e+10" ) ;
183-
184- assert_eq ! ( format_flo32 ( -0.1 ) , " -0.10000000" ) ;
185- assert_eq ! ( format_flo32 ( -0.999_999_94 ) , " -0.99999994" ) ;
186- assert_eq ! ( format_flo32 ( -0.010_000_001 ) , " -1.0000001e-2" ) ;
187- assert_eq ! ( format_flo32 ( -0.099_999_994 ) , " -9.9999994e-2" ) ;
188- assert_eq ! ( format_flo32 ( -0.001 ) , " -1.0000000e-3" ) ;
189- assert_eq ! ( format_flo32 ( -0.009_999_999_8 ) , " -9.9999998e-3" ) ;
190-
191- assert_eq ! ( format_flo32 ( 3.402_823_3e38 ) , " 3.4028233e+38" ) ;
192- assert_eq ! ( format_flo32 ( -3.402_823_3e38 ) , "-3.4028233e+38" ) ;
193- assert_eq ! ( format_flo32 ( -1.166_310_8e-38 ) , "-1.1663108e-38" ) ;
194- assert_eq ! ( format_flo32 ( -4.701_977_1e-38 ) , "-4.7019771e-38" ) ;
195- assert_eq ! ( format_flo32 ( 1e-45 ) , " 1e-45" ) ;
196-
197- assert_eq ! ( format_flo32 ( -3.402_823_466e+38 ) , "-3.4028235e+38" ) ;
198- assert_eq ! ( format_flo32 ( f32 :: NAN ) , " NaN" ) ;
199- assert_eq ! ( format_flo32 ( f32 :: INFINITY ) , " inf" ) ;
200- assert_eq ! ( format_flo32 ( f32 :: NEG_INFINITY ) , " -inf" ) ;
201- assert_eq ! ( format_flo32 ( -0.0 ) , " -0" ) ;
202- assert_eq ! ( format_flo32 ( 0.0 ) , " 0" ) ;
130+ fn test_format_f32 ( ) {
131+ assert_eq ! ( format_f32 ( 1.0 ) , " 1.0000000" ) ;
132+ assert_eq ! ( format_f32 ( 9.999_999_0 ) , " 9.9999990" ) ;
133+ assert_eq ! ( format_f32 ( 10.0 ) , " 10.000000" ) ;
134+ assert_eq ! ( format_f32 ( 99.999_977 ) , " 99.999977" ) ;
135+ assert_eq ! ( format_f32 ( 99.999_992 ) , " 99.999992" ) ;
136+ assert_eq ! ( format_f32 ( 100.0 ) , " 100.00000" ) ;
137+ assert_eq ! ( format_f32 ( 999.99994 ) , " 999.99994" ) ;
138+ assert_eq ! ( format_f32 ( 1000.0 ) , " 1000.0000" ) ;
139+ assert_eq ! ( format_f32 ( 9999.9990 ) , " 9999.9990" ) ;
140+ assert_eq ! ( format_f32 ( 10000.0 ) , " 10000.000" ) ;
141+ assert_eq ! ( format_f32 ( 99999.992 ) , " 99999.992" ) ;
142+ assert_eq ! ( format_f32 ( 100_000.0 ) , " 100000.00" ) ;
143+ assert_eq ! ( format_f32 ( 999_999.94 ) , " 999999.94" ) ;
144+ assert_eq ! ( format_f32 ( 1_000_000.0 ) , " 1000000.0" ) ;
145+ assert_eq ! ( format_f32 ( 9_999_999.0 ) , " 9999999.0" ) ;
146+ assert_eq ! ( format_f32 ( 10_000_000.0 ) , " 10000000" ) ;
147+ assert_eq ! ( format_f32 ( 99_999_992.0 ) , " 99999992" ) ;
148+ assert_eq ! ( format_f32 ( 100_000_000.0 ) , " 1.0000000e+8" ) ;
149+ assert_eq ! ( format_f32 ( 9.999_999_4e8 ) , " 9.9999994e+8" ) ;
150+ assert_eq ! ( format_f32 ( 1.0e9 ) , " 1.0000000e+9" ) ;
151+ assert_eq ! ( format_f32 ( 9.999_999_0e9 ) , " 9.9999990e+9" ) ;
152+ assert_eq ! ( format_f32 ( 1.0e10 ) , " 1.0000000e+10" ) ;
153+
154+ assert_eq ! ( format_f32 ( 0.1 ) , " 0.10000000" ) ;
155+ assert_eq ! ( format_f32 ( 0.999_999_94 ) , " 0.99999994" ) ;
156+ assert_eq ! ( format_f32 ( 0.010_000_001 ) , " 1.0000001e-2" ) ;
157+ assert_eq ! ( format_f32 ( 0.099_999_994 ) , " 9.9999994e-2" ) ;
158+ assert_eq ! ( format_f32 ( 0.001 ) , " 1.0000000e-3" ) ;
159+ assert_eq ! ( format_f32 ( 0.009_999_999_8 ) , " 9.9999998e-3" ) ;
160+
161+ assert_eq ! ( format_f32 ( -1.0 ) , " -1.0000000" ) ;
162+ assert_eq ! ( format_f32 ( -9.999_999_0 ) , " -9.9999990" ) ;
163+ assert_eq ! ( format_f32 ( -10.0 ) , " -10.000000" ) ;
164+ assert_eq ! ( format_f32 ( -99.999_977 ) , " -99.999977" ) ;
165+ assert_eq ! ( format_f32 ( -99.999_992 ) , " -99.999992" ) ;
166+ assert_eq ! ( format_f32 ( -100.0 ) , " -100.00000" ) ;
167+ assert_eq ! ( format_f32 ( -999.99994 ) , " -999.99994" ) ;
168+ assert_eq ! ( format_f32 ( -1000.0 ) , " -1000.0000" ) ;
169+ assert_eq ! ( format_f32 ( -9999.9990 ) , " -9999.9990" ) ;
170+ assert_eq ! ( format_f32 ( -10000.0 ) , " -10000.000" ) ;
171+ assert_eq ! ( format_f32 ( -99999.992 ) , " -99999.992" ) ;
172+ assert_eq ! ( format_f32 ( -100_000.0 ) , " -100000.00" ) ;
173+ assert_eq ! ( format_f32 ( -999_999.94 ) , " -999999.94" ) ;
174+ assert_eq ! ( format_f32 ( -1_000_000.0 ) , " -1000000.0" ) ;
175+ assert_eq ! ( format_f32 ( -9_999_999.0 ) , " -9999999.0" ) ;
176+ assert_eq ! ( format_f32 ( -10_000_000.0 ) , " -10000000" ) ;
177+ assert_eq ! ( format_f32 ( -99_999_992.0 ) , " -99999992" ) ;
178+ assert_eq ! ( format_f32 ( -100_000_000.0 ) , " -1.0000000e+8" ) ;
179+ assert_eq ! ( format_f32 ( -9.999_999_4e8 ) , " -9.9999994e+8" ) ;
180+ assert_eq ! ( format_f32 ( -1.0e9 ) , " -1.0000000e+9" ) ;
181+ assert_eq ! ( format_f32 ( -9.999_999_0e9 ) , " -9.9999990e+9" ) ;
182+ assert_eq ! ( format_f32 ( -1.0e10 ) , "-1.0000000e+10" ) ;
183+
184+ assert_eq ! ( format_f32 ( -0.1 ) , " -0.10000000" ) ;
185+ assert_eq ! ( format_f32 ( -0.999_999_94 ) , " -0.99999994" ) ;
186+ assert_eq ! ( format_f32 ( -0.010_000_001 ) , " -1.0000001e-2" ) ;
187+ assert_eq ! ( format_f32 ( -0.099_999_994 ) , " -9.9999994e-2" ) ;
188+ assert_eq ! ( format_f32 ( -0.001 ) , " -1.0000000e-3" ) ;
189+ assert_eq ! ( format_f32 ( -0.009_999_999_8 ) , " -9.9999998e-3" ) ;
190+
191+ assert_eq ! ( format_f32 ( 3.402_823_3e38 ) , " 3.4028233e+38" ) ;
192+ assert_eq ! ( format_f32 ( -3.402_823_3e38 ) , "-3.4028233e+38" ) ;
193+ assert_eq ! ( format_f32 ( -1.166_310_8e-38 ) , "-1.1663108e-38" ) ;
194+ assert_eq ! ( format_f32 ( -4.701_977_1e-38 ) , "-4.7019771e-38" ) ;
195+ assert_eq ! ( format_f32 ( 1e-45 ) , " 1e-45" ) ;
196+
197+ assert_eq ! ( format_f32 ( -3.402_823_466e+38 ) , "-3.4028235e+38" ) ;
198+ assert_eq ! ( format_f32 ( f32 :: NAN ) , " NaN" ) ;
199+ assert_eq ! ( format_f32 ( f32 :: INFINITY ) , " inf" ) ;
200+ assert_eq ! ( format_f32 ( f32 :: NEG_INFINITY ) , " -inf" ) ;
201+ assert_eq ! ( format_f32 ( -0.0 ) , " -0" ) ;
202+ assert_eq ! ( format_f32 ( 0.0 ) , " 0" ) ;
203203}
204204
205205#[ test]
206206#[ allow( clippy:: cognitive_complexity) ]
207- fn test_format_flo64 ( ) {
208- assert_eq ! ( format_flo64 ( 1.0 ) , " 1.0000000000000000" ) ;
209- assert_eq ! ( format_flo64 ( 10.0 ) , " 10.000000000000000" ) ;
207+ fn test_format_f64 ( ) {
208+ assert_eq ! ( format_f64 ( 1.0 ) , " 1.0000000000000000" ) ;
209+ assert_eq ! ( format_f64 ( 10.0 ) , " 10.000000000000000" ) ;
210210 assert_eq ! (
211- format_flo64 ( 1_000_000_000_000_000.0 ) ,
211+ format_f64 ( 1_000_000_000_000_000.0 ) ,
212212 " 1000000000000000.0"
213213 ) ;
214214 assert_eq ! (
215- format_flo64 ( 10_000_000_000_000_000.0 ) ,
215+ format_f64 ( 10_000_000_000_000_000.0 ) ,
216216 " 10000000000000000"
217217 ) ;
218218 assert_eq ! (
219- format_flo64 ( 100_000_000_000_000_000.0 ) ,
219+ format_f64 ( 100_000_000_000_000_000.0 ) ,
220220 " 1.0000000000000000e+17"
221221 ) ;
222222
223- assert_eq ! ( format_flo64 ( -0.1 ) , " -0.10000000000000001" ) ;
224- assert_eq ! ( format_flo64 ( -0.01 ) , " -1.0000000000000000e-2" ) ;
223+ assert_eq ! ( format_f64 ( -0.1 ) , " -0.10000000000000001" ) ;
224+ assert_eq ! ( format_f64 ( -0.01 ) , " -1.0000000000000000e-2" ) ;
225225
226226 assert_eq ! (
227- format_flo64 ( -2.225_073_858_507_201_4e-308 ) ,
227+ format_f64 ( -2.225_073_858_507_201_4e-308 ) ,
228228 "-2.2250738585072014e-308"
229229 ) ;
230- assert_eq ! ( format_flo64 ( 4e-320 ) , " 4e-320" ) ;
231- assert_eq ! ( format_flo64 ( f64 :: NAN ) , " NaN" ) ;
232- assert_eq ! ( format_flo64 ( f64 :: INFINITY ) , " inf" ) ;
233- assert_eq ! ( format_flo64 ( f64 :: NEG_INFINITY ) , " -inf" ) ;
234- assert_eq ! ( format_flo64 ( -0.0 ) , " -0" ) ;
235- assert_eq ! ( format_flo64 ( 0.0 ) , " 0" ) ;
230+ assert_eq ! ( format_f64 ( 4e-320 ) , " 4e-320" ) ;
231+ assert_eq ! ( format_f64 ( f64 :: NAN ) , " NaN" ) ;
232+ assert_eq ! ( format_f64 ( f64 :: INFINITY ) , " inf" ) ;
233+ assert_eq ! ( format_f64 ( f64 :: NEG_INFINITY ) , " -inf" ) ;
234+ assert_eq ! ( format_f64 ( -0.0 ) , " -0" ) ;
235+ assert_eq ! ( format_f64 ( 0.0 ) , " 0" ) ;
236236}
237237
238238#[ test]
239239#[ allow( clippy:: cognitive_complexity) ]
240- fn test_format_flo16 ( ) {
241- assert_eq ! ( format_flo16 ( f16:: from_bits( 0x8400u16 ) ) , "-6.104e-5" ) ;
242- assert_eq ! ( format_flo16 ( f16:: from_bits( 0x8401u16 ) ) , "-6.109e-5" ) ;
243- assert_eq ! ( format_flo16 ( f16:: from_bits( 0x8402u16 ) ) , "-6.115e-5" ) ;
244- assert_eq ! ( format_flo16 ( f16:: from_bits( 0x8403u16 ) ) , "-6.121e-5" ) ;
245-
246- assert_eq ! ( format_flo16 ( f16:: from_f32( 1.0 ) ) , " 1.000" ) ;
247- assert_eq ! ( format_flo16 ( f16:: from_f32( 10.0 ) ) , " 10.00" ) ;
248- assert_eq ! ( format_flo16 ( f16:: from_f32( 100.0 ) ) , " 100.0" ) ;
249- assert_eq ! ( format_flo16 ( f16:: from_f32( 1000.0 ) ) , " 1000" ) ;
250- assert_eq ! ( format_flo16 ( f16:: from_f32( 10000.0 ) ) , " 1.000e+4" ) ;
251-
252- assert_eq ! ( format_flo16 ( f16:: from_f32( -0.2 ) ) , " -0.2000" ) ;
253- assert_eq ! ( format_flo16 ( f16:: from_f32( -0.02 ) ) , "-2.000e-2" ) ;
254-
255- assert_eq ! ( format_flo16 ( f16:: MIN_POSITIVE_SUBNORMAL ) , " 5.960e-8" ) ;
256- assert_eq ! ( format_flo16 ( f16:: MIN ) , "-6.550e+4" ) ;
257- assert_eq ! ( format_flo16 ( f16:: NAN ) , " NaN" ) ;
258- assert_eq ! ( format_flo16 ( f16:: INFINITY ) , " inf" ) ;
259- assert_eq ! ( format_flo16 ( f16:: NEG_INFINITY ) , " -inf" ) ;
260- assert_eq ! ( format_flo16 ( f16:: NEG_ZERO ) , " -0" ) ;
261- assert_eq ! ( format_flo16 ( f16:: ZERO ) , " 0" ) ;
240+ fn test_format_f16 ( ) {
241+ assert_eq ! ( format_f16 ( f16:: from_bits( 0x8400u16 ) ) , "-6.104e-5" ) ;
242+ assert_eq ! ( format_f16 ( f16:: from_bits( 0x8401u16 ) ) , "-6.109e-5" ) ;
243+ assert_eq ! ( format_f16 ( f16:: from_bits( 0x8402u16 ) ) , "-6.115e-5" ) ;
244+ assert_eq ! ( format_f16 ( f16:: from_bits( 0x8403u16 ) ) , "-6.121e-5" ) ;
245+
246+ assert_eq ! ( format_f16 ( f16:: from_f32( 1.0 ) ) , " 1.000" ) ;
247+ assert_eq ! ( format_f16 ( f16:: from_f32( 10.0 ) ) , " 10.00" ) ;
248+ assert_eq ! ( format_f16 ( f16:: from_f32( 100.0 ) ) , " 100.0" ) ;
249+ assert_eq ! ( format_f16 ( f16:: from_f32( 1000.0 ) ) , " 1000" ) ;
250+ assert_eq ! ( format_f16 ( f16:: from_f32( 10000.0 ) ) , " 1.000e+4" ) ;
251+
252+ assert_eq ! ( format_f16 ( f16:: from_f32( -0.2 ) ) , " -0.2000" ) ;
253+ assert_eq ! ( format_f16 ( f16:: from_f32( -0.02 ) ) , "-2.000e-2" ) ;
254+
255+ assert_eq ! ( format_f16 ( f16:: MIN_POSITIVE_SUBNORMAL ) , " 5.960e-8" ) ;
256+ assert_eq ! ( format_f16 ( f16:: MIN ) , "-6.550e+4" ) ;
257+ assert_eq ! ( format_f16 ( f16:: NAN ) , " NaN" ) ;
258+ assert_eq ! ( format_f16 ( f16:: INFINITY ) , " inf" ) ;
259+ assert_eq ! ( format_f16 ( f16:: NEG_INFINITY ) , " -inf" ) ;
260+ assert_eq ! ( format_f16 ( f16:: NEG_ZERO ) , " -0" ) ;
261+ assert_eq ! ( format_f16 ( f16:: ZERO ) , " 0" ) ;
262262}
0 commit comments