common

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 10, 2020 License: LGPL-3.0 Imports: 12 Imported by: 7

Documentation

Index

Constants

View Source
const (
	// HashLength is the expected length of the common.Hash type
	HashLength = 32
)

Variables

View Source
var (
	// BestBlockHashKey is the db location the hash of the best (unfinalized) block header.
	BestBlockHashKey = []byte("best_hash")
	// LatestStorageHashKey is the db location of the hash of the latest storage trie.
	LatestStorageHashKey = []byte("latest_storage_hash")
	// FinalizedBlockHashKey is the db location of the hash of the latest finalized block header.
	FinalizedBlockHashKey = []byte("finalized_head")
	// GenesisDataKey is the db location of the genesis data.
	GenesisDataKey = []byte("genesis_data")
	// BlockTreeKey is the db location of the encoded block tree structure.
	BlockTreeKey = []byte("block_tree")
	// LatestFinalizedRoundKey is the key where the last finalized grandpa round is stored
	LatestFinalizedRoundKey = []byte("latest_finalized_round")
)
View Source
var (
	// CodeKey is the key where runtime code is stored in the trie
	CodeKey = []byte(":code")
)
View Source
var ErrNoPrefix = errors.New("could not byteify non 0x prefixed string")

ErrNoPrefix is returned when trying to convert a hex-encoded string with no 0x prefix

Functions

func AppendZeroes

func AppendZeroes(in []byte, l int) []byte

AppendZeroes appends zeroes to the input byte array up until it has length l

func BalanceKey

func BalanceKey(key [32]byte) ([]byte, error)

BalanceKey returns the storage trie key for the balance of the account with the given public key

func Blake2b128

func Blake2b128(in []byte) ([]byte, error)

Blake2b128 returns the 128-bit blake2b hash of the input data

func BytesToHex

func BytesToHex(in []byte) string

BytesToHex turns a byte slice into a 0x prefixed hex string

func BytesToStringArray

func BytesToStringArray(in [][]byte) []string

BytesToStringArray turns an array of byte arrays into an array strings

func Concat

func Concat(s1 []byte, s2 ...byte) []byte

Concat concatenates two byte arrays used instead of append to prevent modifying the original byte array

func HexToBytes

func HexToBytes(in string) ([]byte, error)

HexToBytes turns a 0x prefixed hex string into a byte slice

func MustHexToBytes added in v0.2.0

func MustHexToBytes(in string) []byte

MustHexToBytes turns a 0x prefixed hex string into a byte slice it panic if it cannot decode the string

func NonceKey

func NonceKey(key [32]byte) ([]byte, error)

NonceKey returns the storage trie key for the nonce of the account with the given public key

func Read32Bytes

func Read32Bytes(r io.Reader) ([32]byte, error)

Read32Bytes reads 32 bytes from the reader and returns it

func ReadByte

func ReadByte(r io.Reader) (byte, error)

ReadByte reads a byte from the reader and returns it

func ReadUint32

func ReadUint32(r io.Reader) (uint32, error)

ReadUint32 reads a 4-byte uint32 from the reader and returns it

func ReadUint64

func ReadUint64(r io.Reader) (uint64, error)

ReadUint64 reads an 8-byte uint32 from the reader and returns it

func StringArrayToBytes

func StringArrayToBytes(in []string) [][]byte

StringArrayToBytes turns an array of strings into an array of byte arrays

func StringToInts

func StringToInts(in string) ([]int, error)

StringToInts turns a string consisting of ints separated by commas into an int array

func SwapByteNibbles

func SwapByteNibbles(b byte) byte

SwapByteNibbles swaps the two nibbles of a byte

func SwapNibbles

func SwapNibbles(k []byte) []byte

SwapNibbles swaps the nibbles for each byte in the byte array

func Twox128Hash added in v0.2.0

func Twox128Hash(msg []byte) ([]byte, error)

Twox128Hash computes xxHash64 twice with seeds 0 and 1 applied on given byte array

func Twox64 added in v0.2.0

func Twox64(in []byte) ([]byte, error)

Twox64 returns the xx64 hash of the input data

func Uint16ToBytes

func Uint16ToBytes(in uint16) (out []byte)

Uint16ToBytes converts a uint16 into a 2-byte slice

Types

type Address

type Address string

Address represents a base58 encoded public key

type Hash

type Hash [32]byte

Hash used to store a blake2b hash

func Blake2bHash

func Blake2bHash(in []byte) (Hash, error)

Blake2bHash returns the 256-bit blake2b hash of the input data

func BytesToHash

func BytesToHash(b []byte) Hash

BytesToHash sets b to hash. If b is larger than len(h), b will be cropped from the left.

func HexToHash

func HexToHash(in string) (Hash, error)

HexToHash turns a 0x prefixed hex string into type Hash

func Keccak256

func Keccak256(in []byte) (Hash, error)

Keccak256 returns the keccak256 hash of the input data

func MustHexToHash added in v0.2.0

func MustHexToHash(in string) Hash

MustHexToHash turns a 0x prefixed hex string into type Hash it panics if it cannot turn the string into a Hash

func NewHash

func NewHash(in []byte) (res Hash)

NewHash casts a byte array to a Hash if the input is longer than 32 bytes, it takes the first 32 bytes

func ReadHash

func ReadHash(r io.Reader) (Hash, error)

ReadHash reads a 32-byte hash from the reader and returns it

func Twox256 added in v0.2.0

func Twox256(in []byte) (Hash, error)

Twox256 returns the twox256 hash of the input data

func (Hash) Equal

func (h Hash) Equal(g Hash) bool

Equal compares two hashes

func (*Hash) SetBytes

func (h *Hash) SetBytes(b []byte)

SetBytes sets the hash to the value of b. If b is larger than len(h), b will be cropped from the left.

func (Hash) String

func (h Hash) String() string

String returns the hex string for the hash

func (Hash) ToBytes

func (h Hash) ToBytes() []byte

ToBytes turns a hash to a byte array

type Health

type Health struct {
	Peers           int
	IsSyncing       bool
	ShouldHavePeers bool
}

Health is network information about host needed for the rpc server

type NetworkState

type NetworkState struct {
	PeerID     string
	Multiaddrs []ma.Multiaddr
}

NetworkState is network information about host needed for the rpc server and the runtime

type PeerInfo

type PeerInfo struct {
	PeerID          string
	Roles           byte
	ProtocolVersion uint32
	BestHash        Hash
	BestNumber      uint64
}

PeerInfo is network information about peers needed for the rpc server

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL