backporting: remove redefinition of strconv__Float64u
							parent
							
								
									3d0f4fd756
								
							
						
					
					
						commit
						317a9bae5f
					
				|  | @ -1,3 +1,4 @@ | ||||||
|  | module strconv | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| atof util | atof util | ||||||
|  | @ -17,17 +18,6 @@ Grzegorz Kraszewski krashan@teleinfo.pb.edu.pl | ||||||
| URL: http://krashan.ppa.pl/articles/stringtofloat/
 | URL: http://krashan.ppa.pl/articles/stringtofloat/
 | ||||||
| Original license: MIT | Original license: MIT | ||||||
| 
 | 
 | ||||||
| */ |  | ||||||
| module strconv |  | ||||||
| 
 |  | ||||||
| union Float64u { |  | ||||||
| mut: |  | ||||||
| 	f f64 |  | ||||||
| 	u u64 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /* |  | ||||||
| 
 |  | ||||||
| 96 bit operation utilities | 96 bit operation utilities | ||||||
| Note: when u128 will be available these function can be refactored | Note: when u128 will be available these function can be refactored | ||||||
| 
 | 
 | ||||||
|  | @ -162,13 +152,6 @@ Support struct | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| // The structure is filled by parser, then given to converter.
 |  | ||||||
| pub struct PrepNumber { |  | ||||||
| pub mut: |  | ||||||
| 	negative bool // 0 if positive number, 1 if negative
 |  | ||||||
| 	exponent int // power of 10 exponent
 |  | ||||||
| 	mantissa u64 // integer mantissa
 |  | ||||||
| } |  | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| String parser | String parser | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| atof util | atof util | ||||||
|  | @ -16,14 +18,6 @@ Know limitation: | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| module strconv |  | ||||||
| 
 |  | ||||||
| union Float64u { |  | ||||||
| mut: |  | ||||||
| 	f f64 |  | ||||||
| 	u u64 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // atof_quick return a f64 number from a string in a quick way
 | // atof_quick return a f64 number from a string in a quick way
 | ||||||
| pub fn atof_quick(s string) f64 { | pub fn atof_quick(s string) f64 { | ||||||
| 	mut f := Float64u{} // result
 | 	mut f := Float64u{} // result
 | ||||||
|  |  | ||||||
|  | @ -1,8 +1,8 @@ | ||||||
|  | module strconv | ||||||
| // Copyright (c) 2019-2020 Alexander Medvednikov. All rights reserved.
 | // Copyright (c) 2019-2020 Alexander Medvednikov. All rights reserved.
 | ||||||
| // Use of this source code is governed by an MIT license
 | // Use of this source code is governed by an MIT license
 | ||||||
| // that can be found in the LICENSE file.
 | // that can be found in the LICENSE file.
 | ||||||
| // TODO: use optionals, or some way to return default with error.
 | // TODO: use optionals, or some way to return default with error.
 | ||||||
| module strconv |  | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
| // int_size is the size in bits of an int or uint value.
 | // int_size is the size in bits of an int or uint value.
 | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| f32 to string | f32 to string | ||||||
|  | @ -17,21 +19,7 @@ inspired by the Go version here: | ||||||
| https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| module strconv |  | ||||||
| 
 | 
 | ||||||
| // dec32 is a floating decimal type representing m * 10^e.
 |  | ||||||
| struct Dec32 { |  | ||||||
| mut: |  | ||||||
| 	m u32 |  | ||||||
| 	e int |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // support union for convert f32 to u32
 |  | ||||||
| union Uf32 { |  | ||||||
| mut: |  | ||||||
| 	f f32 |  | ||||||
| 	u u32 |  | ||||||
| } |  | ||||||
| 
 | 
 | ||||||
| // pow of ten table used by n_digit reduction
 | // pow of ten table used by n_digit reduction
 | ||||||
| const( | const( | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| f32 to string | f32 to string | ||||||
|  | @ -17,27 +19,6 @@ inspired by the Go version here: | ||||||
| https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| module strconv |  | ||||||
| 
 |  | ||||||
| struct Uint128 { |  | ||||||
| mut: |  | ||||||
| 	lo u64 |  | ||||||
| 	hi u64 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // dec64 is a floating decimal type representing m * 10^e.
 |  | ||||||
| struct Dec64 { |  | ||||||
| mut: |  | ||||||
| 	m u64 |  | ||||||
| 	e int |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // support union for convert f64 to u64
 |  | ||||||
| union Uf64 { |  | ||||||
| mut: |  | ||||||
| 	f f64 |  | ||||||
| 	u u64 |  | ||||||
| } |  | ||||||
| 
 | 
 | ||||||
| // pow of ten table used by n_digit reduction
 | // pow of ten table used by n_digit reduction
 | ||||||
| const( | const( | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| printf/sprintf V implementation | printf/sprintf V implementation | ||||||
|  | @ -9,7 +11,6 @@ that can be found in the LICENSE file. | ||||||
| This file contains the printf/sprintf functions | This file contains the printf/sprintf functions | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| module strconv |  | ||||||
| 
 | 
 | ||||||
| import strings | import strings | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| f32/f64 ftoa functions | f32/f64 ftoa functions | ||||||
|  | @ -17,7 +19,6 @@ inspired by the Go version here: | ||||||
| https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| module strconv |  | ||||||
| 
 | 
 | ||||||
| [inline] | [inline] | ||||||
| pub fn ftoa_64(f f64) string { | pub fn ftoa_64(f f64) string { | ||||||
|  |  | ||||||
|  | @ -0,0 +1,49 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
|  | // The structure is filled by parser, then given to converter.
 | ||||||
|  | pub struct PrepNumber { | ||||||
|  | pub mut: | ||||||
|  | 	negative bool // 0 if positive number, 1 if negative
 | ||||||
|  | 	exponent int // power of 10 exponent
 | ||||||
|  | 	mantissa u64 // integer mantissa
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // dec32 is a floating decimal type representing m * 10^e.
 | ||||||
|  | struct Dec32 { | ||||||
|  | mut: | ||||||
|  | 	m u32 | ||||||
|  | 	e int | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // dec64 is a floating decimal type representing m * 10^e.
 | ||||||
|  | struct Dec64 { | ||||||
|  | mut: | ||||||
|  | 	m u64 | ||||||
|  | 	e int | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | struct Uint128 { | ||||||
|  | mut: | ||||||
|  | 	lo u64 | ||||||
|  | 	hi u64 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // support union for convert f32 to u32
 | ||||||
|  | union Uf32 { | ||||||
|  | mut: | ||||||
|  | 	f f32 | ||||||
|  | 	u u32 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // support union for convert f64 to u64
 | ||||||
|  | union Uf64 { | ||||||
|  | mut: | ||||||
|  | 	f f64 | ||||||
|  | 	u u64 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | union Float64u { | ||||||
|  | mut: | ||||||
|  | 	f f64 | ||||||
|  | 	u u64 | ||||||
|  | } | ||||||
|  | @ -1,3 +1,5 @@ | ||||||
|  | module strconv | ||||||
|  | 
 | ||||||
| /* | /* | ||||||
| 
 | 
 | ||||||
| f32/f64 to string utilities | f32/f64 to string utilities | ||||||
|  | @ -17,7 +19,6 @@ inspired by the Go version here: | ||||||
| https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | https://github.com/cespare/ryu/tree/ba56a33f39e3bbbfa409095d0f9ae168a595feea
 | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| module strconv |  | ||||||
| 
 | 
 | ||||||
| import math.bits | import math.bits | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -204,6 +204,7 @@ pub fn cgen(files []ast.File, table &table.Table, pref &pref.Preferences) string | ||||||
| 	//
 | 	//
 | ||||||
| 	mut b := strings.new_builder(250000) | 	mut b := strings.new_builder(250000) | ||||||
| 	b.write(g.hashes()) | 	b.write(g.hashes()) | ||||||
|  | 	b.writeln('\n// V comptime_defines:') | ||||||
| 	b.write(g.comptime_defines.str()) | 	b.write(g.comptime_defines.str()) | ||||||
| 	b.writeln('\n// V typedefs:') | 	b.writeln('\n// V typedefs:') | ||||||
| 	b.write(g.typedefs.str()) | 	b.write(g.typedefs.str()) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue