Documentation ¶
Index ¶
- Constants
- Variables
- func Abs__str(_sn string) (sn string, err error)
- func Add__str(_a, _b string) (sn string, err error)
- func Cmp__str(_sn_a, _sn_b string) (n_cmp int, err error)
- func Div__str(_a, _b string) (sn string, err error)
- func Mul__str(_a, _b string) (sn string, err error)
- func Neg__str(_sn string) (sn string, err error)
- func Pow(_sn string, _n8_num int64) (sn string, err error)
- func Pow10(_n8_num int64) (sn string, err error)
- func Round__str(_sn string, _n_step_size int) (sn string, err error)
- func Round_down__str(_sn string, _n_step_size int) (sn string, err error)
- func Round_up__str(_sn string, _n_step_size int) (sn string, err error)
- func Sub__str(_a, _b string) (sn string, err error)
- type Snum
- func (t *Snum) Abs()
- func (t *Snum) Add(_pt *Snum)
- func (t *Snum) Add__str(_sn string) (err error)
- func (t *Snum) Cmp(_pt *Snum) int
- func (t *Snum) Cmp__str(_sn string) (n_cmp int)
- func (t *Snum) Copy() *Snum
- func (t *Snum) Div(_pt *Snum)
- func (t *Snum) Div__str(_sn string) (err error)
- func (t *Snum) Get__raw() (s_raw string, n_len_decimal int, is_minus bool)
- func (t *Snum) Get__str() (s_num string, err error)
- func (t *Snum) Get__uint64() (u8_num uint64, err error)
- func (t *Snum) Group_down(_n_step_size int)
- func (t *Snum) Group_up(_n_step_size int)
- func (t *Snum) Init(_len_standard, _len_decimal int)
- func (t *Snum) Is_zero() bool
- func (t *Snum) Is_zero__over() bool
- func (t *Snum) Is_zero__under() bool
- func (t *Snum) MarshalJSON() ([]byte, error)
- func (t *Snum) Mul(_pt *Snum)
- func (t *Snum) Mul__str(_sn string) (err error)
- func (t *Snum) Neg()
- func (t *Snum) Pow(_num int64)
- func (t *Snum) Round(_step_size int)
- func (t *Snum) Round_down(_step_size int)
- func (t *Snum) Round_up(_step_size int)
- func (t *Snum) Set__raw(_s_raw string, _n_len_decimal int, _is_minus bool)
- func (t *Snum) Set__str(_s_num string) (err error)
- func (t *Snum) Set__uint64(_u8_num uint64) (err error)
- func (t *Snum) Set__zero()
- func (t *Snum) String() string
- func (t *Snum) Sub(_pt *Snum)
- func (t *Snum) Sub__str(_sn string) (err error)
- func (t *Snum) Trim_digit() error
- func (t *Snum) UnmarshalJSON(_bt []byte) error
- type T_Encoder
Constants ¶
View Source
const ( DEF_s_dot string = "." DEF_s_plus string = "+" DEF_s_minus string = "-" DEF_s_num_zero string = "0" DEF_n_len_extend_decimal_for_calc int = 20 DEF_n_base_10 int = 10 DEF_n_bt__len_min_data int = 1 // 숫자가 zero (0) 인 경우도 1 byte 를 사용 함 - big.int 스팩이 아니라 자체 스팩 DEF_n_bt__len_min_total int = DEF_n_header__size + DEF_n_bt__len_min_data DEF_n_header__size int = 1 DEF_b1_header__bit_mask__sign byte = 128 // 1000 0000 DEF_b1_header__bit_mask__standard_len byte = 127 // 0111 1111 DEF_b1_header__bit_mask__high_4_bit byte = 240 // 1111 0000 DEF_b1_header__bit_mask__low_4_bit byte = 15 // 0000 1111 DEF_b1_header__value__sign__plus byte = DEF_b1_header__bit_mask__sign DEF_b1_header__max_len__standard int = 96 DEF_b1_header__max_len__decimal int = 32 )
Variables ¶
View Source
var ( Err_not_a_number error = errors.New("NaN") Err_header_not_enongh error = errors.New("header not enough") Err_div_by_zero error = errors.New("division by zero") )
View Source
var Fn_is_digit = regexp.MustCompile(`(^[+-]?\d{0,96}(\.\d{1,32})?$)`).MatchString // 정수 96 자리 , 소수점 32 자리 제한
Functions ¶
Types ¶
type Snum ¶
type Snum struct {
// contains filtered or unexported fields
}
func (*Snum) Get__uint64 ¶
func (*Snum) Group_down ¶
Output:
x step_size Group_down Group_up 123.321 -4 123.321 123.321 123.321 -3 123.321 123.321 123.321 -2 123.32 123.33 123.321 -1 123.3 123.4 123.321 0 123 124 123.321 1 120 130 123.321 2 100 200 123.321 3 0 1000 123.321 4 0 10000
func (*Snum) Is_zero__over ¶
func (*Snum) Is_zero__under ¶
func (*Snum) MarshalJSON ¶
for interface - package json
func (*Snum) Round ¶
Output:
x Round Round_down Round_up 2.6 3 2 3 2.5 3 2 3 2.1 2 2 3 2 2 2 2
-2.1 -2 -2 -3 -2.5 -3 -2 -3 -2.6 -3 -2 -3
func (*Snum) Round_down ¶
func (*Snum) Set__uint64 ¶
func (*Snum) Trim_digit ¶
func (*Snum) UnmarshalJSON ¶
for interface - package json
Source Files ¶
Click to show internal directories.
Click to hide internal directories.