Documentation
¶
Index ¶
- Constants
- Variables
- func Address(slice []byte) (addr []byte)
- func Big(num string) *big.Int
- func BigCopy(src *big.Int) *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 BinaryLength(num int) int
- func ByteSliceToInterface(slice [][]byte) (ret []interface{})
- func Bytes2Hex(d []byte) string
- func BytesToNumber(b []byte) uint64
- func Char(c []byte) int
- func Compile(script string, silent bool) (ret []byte, err error)
- func CopyBytes(b []byte) (copiedBytes []byte)
- func CurrencyToString(num *big.Int) string
- func Decode(data []byte, pos uint64) (interface{}, uint64)
- func DecodeWithReader(reader *bytes.Buffer) interface{}
- func Encode(object interface{}) []byte
- func ExpandHomePath(p string) (path string)
- func FileExist(filePath string) bool
- func FindFileInArchive(fn string, files []*zip.File) (index int)
- func FormatData(data string) []byte
- func Hex2Bytes(str string) []byte
- func IsHex(str string) bool
- func IsWindows() bool
- func LeftPadBytes(slice []byte, l int) []byte
- func LeftPadString(str string, l int) string
- func NumberToBytes(num interface{}, bits int) []byte
- func ParseData(data ...interface{}) (ret []byte)
- func RandomUint64() (uint64, error)
- func ReadAllFile(filePath string) (string, error)
- func ReadFile(f *zip.File) ([]byte, error)
- func ReadVarInt(buff []byte) (ret uint64)
- func RightPadBytes(slice []byte, l int) []byte
- func RightPadString(str string, l int) string
- func StringToByteFunc(str string, cb func(str string) []byte) (ret []byte)
- func WindonizePath(path string) string
- func WriteFile(filePath string, content []byte) error
- type ConfigManager
- type Database
- type ExtPackage
- type Manifest
- type RlpEncode
- type RlpEncodeDecode
- type RlpEncoder
- type Value
- func (self *Value) Add(other interface{}) *Value
- func (val *Value) Append(v interface{}) *Value
- func (val *Value) AppendList() *Value
- func (val *Value) BigInt() *big.Int
- func (val *Value) Byte() byte
- func (val *Value) Bytes() []byte
- func (val *Value) Cmp(o *Value) bool
- func (self *Value) Copy() *Value
- func (self *Value) Decode()
- func (self *Value) DeepCmp(o *Value) bool
- func (self *Value) Div(other interface{}) *Value
- func (val *Value) Encode() []byte
- func (val *Value) Err() error
- func (val *Value) Get(idx int) *Value
- func (val *Value) Int() int64
- func (val *Value) Interface() interface{}
- func (val *Value) IsEmpty() bool
- func (self *Value) IsErr() bool
- func (val *Value) IsList() bool
- func (val *Value) IsNil() bool
- func (val *Value) IsSlice() bool
- func (val *Value) IsStr() bool
- func (val *Value) Len() int
- func (self *Value) Mul(other interface{}) *Value
- func (val *Value) NewIterator() *ValueIterator
- func (self *Value) Pow(other interface{}) *Value
- func (val *Value) Raw() interface{}
- func (val *Value) Slice() []interface{}
- func (val *Value) SliceFrom(from int) *Value
- func (val *Value) SliceFromTo(from, to int) *Value
- func (val *Value) SliceTo(to int) *Value
- func (val *Value) Str() string
- func (val *Value) String() string
- func (self *Value) Sub(other interface{}) *Value
- func (val *Value) Type() reflect.Kind
- func (val *Value) Uint() uint64
- type ValueIterator
Constants ¶
const ( RlpEmptyList = 0x80 RlpEmptyStr = 0x40 )
Variables ¶
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
var ( Big1 = big.NewInt(1) Big2 = big.NewInt(2) Big0 = big.NewInt(0) BigTrue = Big1 BigFalse = Big0 Big32 = big.NewInt(32) Big256 = big.NewInt(0xff) )
Common big integers often used
Functions ¶
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 ByteSliceToInterface ¶
func ByteSliceToInterface(slice [][]byte) (ret []interface{})
func CurrencyToString ¶
Currency to string Returns a string representing a human readable format
func Decode ¶
TODO Use a bytes.Buffer instead of a raw byte slice. Cleaner code, and use draining instead of seeking the next bytes to read
func DecodeWithReader ¶
func ExpandHomePath ¶
func FindFileInArchive ¶
Find file in archive
Returns the index of the given file name if it exists. -1 if file not found
func FormatData ¶
func LeftPadBytes ¶
func LeftPadString ¶
func RandomUint64 ¶
RandomUint64 returns a cryptographically random uint64 value.
func ReadAllFile ¶
func ReadFile ¶
Read file
Read a given compressed file and returns the read bytes. Returns an error otherwise
func RightPadBytes ¶
func RightPadString ¶
func WindonizePath ¶
Types ¶
type ConfigManager ¶
type ConfigManager struct {
Db Database
ExecPath string
Debug bool
Diff bool
DiffType string
Paranoia bool
// contains filtered or unexported fields
}
Config struct
var Config *ConfigManager
func ReadConfig ¶
func ReadConfig(ConfigFile string, Datadir string, EnvPrefix string) *ConfigManager
Read config
Initialize Config from Config File
func (*ConfigManager) Delete ¶
func (c *ConfigManager) Delete(key string)
func (*ConfigManager) Save ¶
func (c *ConfigManager) Save(key string, value interface{})
provides persistence for flags
type Database ¶
type Database interface {
Put(key []byte, value []byte)
Get(key []byte) ([]byte, error)
//GetKeys() []*Key
Delete(key []byte) error
LastKnownTD() []byte
Close()
Print()
}
Database interface
type ExtPackage ¶
External package
External package contains the main html file and manifest
func OpenPackage ¶
func OpenPackage(fn string) (*ExtPackage, error)
Open package
Opens a prepared ethereum package Reads the manifest file and determines file contents and returns and the external package.
type Manifest ¶
Manifest object
The manifest object holds all the relevant information supplied with the the manifest specified in the package
type RlpEncodeDecode ¶
type RlpEncodeDecode interface {
RlpEncode
RlpValue() []interface{}
}
type RlpEncoder ¶
type RlpEncoder struct {
// contains filtered or unexported fields
}
func NewRlpEncoder ¶
func NewRlpEncoder() *RlpEncoder
func (*RlpEncoder) EncodeData ¶
func (coder *RlpEncoder) EncodeData(rlpData interface{}) []byte
type Value ¶
type Value struct {
Val interface{}
// contains filtered or unexported fields
}
Data values are returned by the rlp decoder. The data values represents one item within the rlp data structure. It's responsible for all the casting It always returns something valid
func EmptyValue ¶
func EmptyValue() *Value
func NewValueFromBytes ¶
func (*Value) AppendList ¶
func (*Value) IsList ¶
Special list checking function. Something is considered a list if it's of type []interface{}. The list is usually used in conjunction with rlp decoded streams.
func (*Value) NewIterator ¶
func (val *Value) NewIterator() *ValueIterator
func (*Value) SliceFromTo ¶
type ValueIterator ¶
type ValueIterator struct {
// contains filtered or unexported fields
}
func (*ValueIterator) Idx ¶
func (it *ValueIterator) Idx() int
func (*ValueIterator) Next ¶
func (it *ValueIterator) Next() bool
func (*ValueIterator) Value ¶
func (it *ValueIterator) Value() *Value
