package decimal
type Traits [T DecimalTypes ] interface {
BytesRequired (int ) int
FromString (string , int32 , int32 ) (T , error )
FromFloat64 (float64 , int32 , int32 ) (T , error )
}
var (
Dec32Traits dec32Traits
Dec64Traits dec64Traits
Dec128Traits dec128Traits
Dec256Traits dec256Traits
)
type (
dec32Traits struct {}
dec64Traits struct {}
dec128Traits struct {}
dec256Traits struct {}
)
func (dec32Traits ) BytesRequired (n int ) int { return 4 * n }
func (dec64Traits ) BytesRequired (n int ) int { return 8 * n }
func (dec128Traits ) BytesRequired (n int ) int { return 16 * n }
func (dec256Traits ) BytesRequired (n int ) int { return 32 * n }
func (dec32Traits ) FromString (v string , prec , scale int32 ) (Decimal32 , error ) {
return Decimal32FromString (v , prec , scale )
}
func (dec64Traits ) FromString (v string , prec , scale int32 ) (Decimal64 , error ) {
return Decimal64FromString (v , prec , scale )
}
func (dec128Traits ) FromString (v string , prec , scale int32 ) (Decimal128 , error ) {
return Decimal128FromString (v , prec , scale )
}
func (dec256Traits ) FromString (v string , prec , scale int32 ) (Decimal256 , error ) {
return Decimal256FromString (v , prec , scale )
}
func (dec32Traits ) FromFloat64 (v float64 , prec , scale int32 ) (Decimal32 , error ) {
return Decimal32FromFloat (v , prec , scale )
}
func (dec64Traits ) FromFloat64 (v float64 , prec , scale int32 ) (Decimal64 , error ) {
return Decimal64FromFloat (v , prec , scale )
}
func (dec128Traits ) FromFloat64 (v float64 , prec , scale int32 ) (Decimal128 , error ) {
return Decimal128FromFloat (v , prec , scale )
}
func (dec256Traits ) FromFloat64 (v float64 , prec , scale int32 ) (Decimal256 , error ) {
return Decimal256FromFloat (v , prec , scale )
}
The pages are generated with Golds v0.8.2 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .