Documentation ¶
Overview ¶
Package common contains various helper functions.
Index ¶
- Constants
- Variables
- func AbsolutePath(Datadir string, filename string) string
- func Big(num string) *big.Int
- func BigD(data []byte) *big.Int
- func BigMax(x, y *big.Int) *big.Int
- func BigMin(x, y *big.Int) *big.Int
- func BigPow(a, b int) *big.Int
- func BigToBytes(num *big.Int, base int) []byte
- func BitTest(num *big.Int, i int) bool
- func Bytes2Big(data []byte) *big.Int
- func Bytes2Hex(d []byte) string
- func BytesToBig(data []byte) *big.Int
- func CopyBytes(b []byte) (copiedBytes []byte)
- func CurrencyToString(num *big.Int) string
- func DefaultDataDir() string
- func EmptyHash(h Hash) bool
- func FirstBitSet(v *big.Int) int
- func FromHex(s string) []byte
- func Hex2Bytes(str string) []byte
- func Hex2BytesFixed(str string, flen int) []byte
- func HomeDir() string
- func IsHex(str string) bool
- func IsHexAddress(s string) bool
- func LeftPadBytes(slice []byte, l int) []byte
- func PP(value []byte) string
- func Report(extra ...interface{})
- func RightPadBytes(slice []byte, l int) []byte
- func S256(x *big.Int) *big.Int
- func String2Big(num string) *big.Int
- func ToHex(b []byte) string
- func U256(x *big.Int) *big.Int
- type Address
- func (a Address) Big() *big.Int
- func (a Address) Bytes() []byte
- func (a Address) Hash() Hash
- func (a Address) Hex() string
- func (a Address) MarshalJSON() ([]byte, error)
- func (a *Address) Set(other Address)
- func (a *Address) SetBytes(b []byte)
- func (a *Address) SetString(s string)
- func (a Address) Str() string
- func (a *Address) UnmarshalJSON(data []byte) error
- type Hash
- func (h Hash) Big() *big.Int
- func (h Hash) Bytes() []byte
- func (h Hash) Generate(rand *rand.Rand, size int) reflect.Value
- func (h Hash) Hex() string
- func (h Hash) MarshalJSON() ([]byte, error)
- func (h *Hash) Set(other Hash)
- func (h *Hash) SetBytes(b []byte)
- func (h *Hash) SetString(s string)
- func (h Hash) Str() string
- func (h *Hash) UnmarshalJSON(input []byte) error
- type StorageSize
Constants ¶
const ( DefaultIPCSocket = "geth.ipc" // Default (relative) name of the IPC RPC socket DefaultHTTPHost = "localhost" // Default host interface for the HTTP RPC server DefaultHTTPPort = 8545 // Default TCP port for the HTTP RPC server DefaultWSHost = "localhost" // Default host interface for the websocket RPC server DefaultWSPort = 8546 // Default TCP port for the websocket RPC server )
const ( HashLength = 32 AddressLength = 20 )
Variables ¶
var ( Big1 = big.NewInt(1) Big2 = big.NewInt(2) Big3 = big.NewInt(3) Big0 = big.NewInt(0) BigTrue = Big1 BigFalse = Big0 Big32 = big.NewInt(32) Big36 = big.NewInt(36) Big97 = big.NewInt(97) Big98 = big.NewInt(98) Big256 = big.NewInt(0xff) Big257 = big.NewInt(257) MaxBig = String2Big("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff") )
Common big integers often used
var ( Douglas = BigPow(10, 42) Einstein = BigPow(10, 21) Ether = BigPow(10, 18) Finney = BigPow(10, 15) Szabo = BigPow(10, 12) Shannon = BigPow(10, 9) Babbage = BigPow(10, 6) Ada = BigPow(10, 3) Wei = big.NewInt(1) )
The different number of units
Functions ¶
func AbsolutePath ¶
func BigToBytes ¶
Big to bytes
Returns the bytes of a big integer with the size specified by **base** Attempts to pad the byte array with zeros.
func CurrencyToString ¶
Currency to string Returns a string representing a human readable format
func DefaultDataDir ¶
func DefaultDataDir() string
DefaultDataDir is the default data directory to use for the databases and other persistence requirements.
func FirstBitSet ¶
func Hex2BytesFixed ¶
func IsHexAddress ¶ added in v1.4.0
IsHexAddress verifies whether a string can represent a valid hex-encoded Ethereum address or not.
func LeftPadBytes ¶
func PP ¶
PP Pretty Prints a byte slice in the following format:
hex(value[:4])...(hex[len(value)-4:])
func Report ¶
func Report(extra ...interface{})
Report gives off a warning requesting the user to submit an issue to the github tracker.
func RightPadBytes ¶
func String2Big ¶
Types ¶
type Address ¶
type Address [AddressLength]byte
func BigToAddress ¶
func HexToAddress ¶
func StringToAddress ¶
func (Address) MarshalJSON ¶ added in v1.4.0
Serialize given address to JSON
func (*Address) SetBytes ¶
Sets the address to the value of b. If b is larger than len(a) it will panic
func (*Address) UnmarshalJSON ¶ added in v1.4.0
Parse address from raw json data
type Hash ¶
type Hash [HashLength]byte
func BytesToHash ¶
func (Hash) MarshalJSON ¶ added in v1.4.0
Serialize given hash to JSON
func (*Hash) UnmarshalJSON ¶ added in v1.4.0
UnmarshalJSON parses a hash in its hex from to a hash.
type StorageSize ¶
type StorageSize float64
func (StorageSize) Int64 ¶
func (self StorageSize) Int64() int64
func (StorageSize) String ¶
func (self StorageSize) String() string