You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
487 B
27 lines
487 B
package bin |
|
|
|
import "math/big" |
|
|
|
// Int128 represents signed 128-bit integer. |
|
type Int128 [16]byte |
|
|
|
// Decode implements bin.Decoder. |
|
func (i *Int128) Decode(buf *Buffer) error { |
|
v, err := buf.Int128() |
|
if err != nil { |
|
return err |
|
} |
|
*i = v |
|
return nil |
|
} |
|
|
|
// Encode implements bin.Encoder. |
|
func (i Int128) Encode(b *Buffer) error { |
|
b.PutInt128(i) |
|
return nil |
|
} |
|
|
|
// BigInt returns corresponding big.Int value. |
|
func (i Int128) BigInt() *big.Int { |
|
return big.NewInt(0).SetBytes(i[:]) |
|
}
|
|
|