xeth

package
v0.8.6-0...-97c3735 Latest Latest
Warning

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

Go to latest
Published: May 6, 2015 License: LGPL-2.1-or-later Imports: 21 Imported by: 0

Documentation

Overview

eXtended ETHereum

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultGas

func DefaultGas() *big.Int

func DefaultGasPrice

func DefaultGasPrice() *big.Int

Types

type Block

type Block struct {
	Size         string       `json:"size"`
	Number       int          `json:"number"`
	Hash         string       `json:"hash"`
	Transactions *common.List `json:"transactions"`
	Uncles       *common.List `json:"uncles"`
	Time         int64        `json:"time"`
	Coinbase     string       `json:"coinbase"`
	Name         string       `json:"name"`
	GasLimit     string       `json:"gasLimit"`
	GasUsed      string       `json:"gasUsed"`
	PrevHash     string       `json:"prevHash"`
	Bloom        string       `json:"bloom"`
	Raw          string       `json:"raw"`
	// contains filtered or unexported fields
}

Block interface exposed to QML

func NewBlock

func NewBlock(block *types.Block) *Block

Creates a new QML Block from a chain block

func (*Block) GetTransaction

func (self *Block) GetTransaction(hash string) *Transaction

func (*Block) ToString

func (self *Block) ToString() string

type Frontend

type Frontend interface {
	// UnlockAccount is called when a transaction needs to be signed
	// but the key corresponding to the transaction's sender is
	// locked.
	//
	// It should unlock the account with the given address and return
	// true if unlocking succeeded.
	UnlockAccount(address []byte) bool

	// This is called for all transactions inititated through
	// Transact. It should prompt the user to confirm the transaction
	// and return true if the transaction was acknowledged.
	//
	// ConfirmTransaction is not used for Call transactions
	// because they cannot change any state.
	ConfirmTransaction(tx string) bool
}

Frontend should be implemented by users of XEth. Its methods are called whenever XEth makes a decision that requires user input.

type Key

type Key struct {
	Address    string `json:"address"`
	PrivateKey string `json:"privateKey"`
	PublicKey  string `json:"publicKey"`
}

func NewKey

func NewKey(key *crypto.KeyPair) *Key

type KeyVal

type KeyVal struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type Object

type Object struct {
	*state.StateObject
}

func NewObject

func NewObject(state *state.StateObject) *Object

func (*Object) Storage

func (self *Object) Storage() (storage map[string]string)

func (*Object) StorageString

func (self *Object) StorageString(str string) *common.Value

func (*Object) StorageValue

func (self *Object) StorageValue(addr *common.Value) *common.Value

type PReceipt

type PReceipt struct {
	CreatedContract bool   `json:"createdContract"`
	Address         string `json:"address"`
	Hash            string `json:"hash"`
	Sender          string `json:"sender"`
}

func NewPReciept

func NewPReciept(contractCreation bool, creationAddress, hash, address []byte) *PReceipt

type Peer

type Peer struct {
	Ip      string `json:"ip"`
	Version string `json:"version"`
	Caps    string `json:"caps"`
	// contains filtered or unexported fields
}

func NewPeer

func NewPeer(peer *p2p.Peer) *Peer

type Receipt

type Receipt struct {
	CreatedContract bool   `json:"createdContract"`
	Address         string `json:"address"`
	Hash            string `json:"hash"`
	Sender          string `json:"sender"`
}

func NewReciept

func NewReciept(contractCreation bool, creationAddress, hash, address []byte) *Receipt

type State

type State struct {
	// contains filtered or unexported fields
}

func NewState

func NewState(xeth *XEth, statedb *state.StateDB) *State

func (*State) Get

func (self *State) Get(addr string) *Object

func (*State) SafeGet

func (self *State) SafeGet(addr string) *Object

func (*State) State

func (self *State) State() *state.StateDB

type Transaction

type Transaction struct {
	Value           string `json:"value"`
	Gas             string `json:"gas"`
	GasPrice        string `json:"gasPrice"`
	Hash            string `json:"hash"`
	Address         string `json:"address"`
	Sender          string `json:"sender"`
	RawData         string `json:"rawData"`
	Data            string `json:"data"`
	Contract        bool   `json:"isContract"`
	CreatesContract bool   `json:"createsContract"`
	Confirmations   int    `json:"confirmations"`
	// contains filtered or unexported fields
}

func NewTx

func NewTx(tx *types.Transaction) *Transaction

func (*Transaction) ToString

func (self *Transaction) ToString() string

type Whisper

type Whisper struct {
	*whisper.Whisper
}

Whisper represents the API wrapper around the internal whisper implementation.

func NewWhisper

func NewWhisper(w *whisper.Whisper) *Whisper

NewWhisper wraps an internal whisper client into an external API version.

func (*Whisper) HasIdentity

func (self *Whisper) HasIdentity(key string) bool

HasIdentity checks if the the whisper node is configured with the private key of the specified public pair.

func (*Whisper) Messages

func (self *Whisper) Messages(id int) []WhisperMessage

Messages retrieves all the currently pooled messages matching a filter id.

func (*Whisper) NewIdentity

func (self *Whisper) NewIdentity() string

NewIdentity generates a new cryptographic identity for the client, and injects it into the known identities for message decryption.

func (*Whisper) Post

func (self *Whisper) Post(payload string, to, from string, topics []string, priority, ttl uint32) error

Post injects a message into the whisper network for distribution.

func (*Whisper) Watch

func (self *Whisper) Watch(to, from string, topics [][]string, fn func(WhisperMessage)) int

Watch installs a new message handler to run in case a matching packet arrives from the whisper network.

type WhisperMessage

type WhisperMessage struct {
	Payload string `json:"payload"`
	To      string `json:"to"`
	From    string `json:"from"`
	Sent    int64  `json:"sent"`
	TTL     int64  `json:"ttl"`
	Hash    string `json:"hash"`
	// contains filtered or unexported fields
}

WhisperMessage is the external API representation of a whisper.Message.

func NewWhisperMessage

func NewWhisperMessage(message *whisper.Message) WhisperMessage

NewWhisperMessage converts an internal message into an API version.

type XEth

type XEth struct {
	// contains filtered or unexported fields
}

func New

func New(eth *eth.Ethereum, frontend Frontend) *XEth

New creates an XEth that uses the given frontend. If a nil Frontend is provided, a default frontend which confirms all transactions will be used.

func (*XEth) Accounts

func (self *XEth) Accounts() []string

func (*XEth) AllLogs

func (self *XEth) AllLogs(earliest, latest int64, skip, max int, address []string, topics [][]string) state.Logs

func (*XEth) AtStateNum

func (self *XEth) AtStateNum(num int64) *XEth

func (*XEth) BalanceAt

func (self *XEth) BalanceAt(addr string) string

func (*XEth) Block

func (self *XEth) Block(v interface{}) *Block

func (*XEth) BlockByHash

func (self *XEth) BlockByHash(strHash string) *Block

func (*XEth) BlockByNumber

func (self *XEth) BlockByNumber(num int64) *Block

func (*XEth) Call

func (self *XEth) Call(fromStr, toStr, valueStr, gasStr, gasPriceStr, dataStr string) (string, error)

func (*XEth) ClientVersion

func (self *XEth) ClientVersion() string

func (*XEth) CodeAt

func (self *XEth) CodeAt(address string) string

func (*XEth) CodeAtBytes

func (self *XEth) CodeAtBytes(address string) []byte

func (*XEth) Coinbase

func (self *XEth) Coinbase() string

func (*XEth) ConfirmTransaction

func (self *XEth) ConfirmTransaction(tx string) bool

func (*XEth) CurrentBlock

func (self *XEth) CurrentBlock() *types.Block

func (*XEth) DbGet

func (self *XEth) DbGet(key []byte) ([]byte, error)

func (*XEth) DbPut

func (self *XEth) DbPut(key, val []byte) bool

func (*XEth) EachStorage

func (self *XEth) EachStorage(addr string) string

func (*XEth) EthBlockByHash

func (self *XEth) EthBlockByHash(strHash string) *types.Block

func (*XEth) EthBlockByNumber

func (self *XEth) EthBlockByNumber(num int64) *types.Block

func (*XEth) EthTransactionByHash

func (self *XEth) EthTransactionByHash(hash string) (tx *types.Transaction, blhash common.Hash, blnum *big.Int, txi uint64)

func (*XEth) EthVersion

func (self *XEth) EthVersion() string

func (*XEth) FilterChanged

func (self *XEth) FilterChanged(id int) state.Logs

func (*XEth) FromAscii

func (self *XEth) FromAscii(str string) string

func (*XEth) FromNumber

func (self *XEth) FromNumber(str string) string

func (*XEth) GasLimit

func (self *XEth) GasLimit() *big.Int

func (*XEth) HashRate

func (self *XEth) HashRate() int64

func (*XEth) IsContract

func (self *XEth) IsContract(address string) bool

func (*XEth) IsListening

func (self *XEth) IsListening() bool

func (*XEth) IsMining

func (self *XEth) IsMining() bool

func (*XEth) Logs

func (self *XEth) Logs(id int) state.Logs

func (*XEth) NetworkVersion

func (self *XEth) NetworkVersion() string

func (*XEth) NewFilterString

func (self *XEth) NewFilterString(word string) int

func (*XEth) NewWhisperFilter

func (p *XEth) NewWhisperFilter(to, from string, topics [][]string) int

NewWhisperFilter creates and registers a new message filter to watch for inbound whisper messages. All parameters at this point are assumed to be HEX encoded.

func (*XEth) NumberToHuman

func (self *XEth) NumberToHuman(balance string) string

func (*XEth) PeerCount

func (self *XEth) PeerCount() int

func (*XEth) PushTx

func (self *XEth) PushTx(encodedTx string) (string, error)

func (*XEth) RegisterFilter

func (self *XEth) RegisterFilter(earliest, latest int64, skip, max int, address []string, topics [][]string) int

func (*XEth) RemoteMining

func (self *XEth) RemoteMining() *miner.RemoteAgent

func (*XEth) SecretToAddress

func (self *XEth) SecretToAddress(key string) string

func (*XEth) SetMining

func (self *XEth) SetMining(shouldmine bool) bool

func (*XEth) State

func (self *XEth) State() *State

func (*XEth) StorageAt

func (self *XEth) StorageAt(addr, storageAddr string) string

func (*XEth) ToAscii

func (self *XEth) ToAscii(str string) string

func (*XEth) Transact

func (self *XEth) Transact(fromStr, toStr, nonceStr, valueStr, gasStr, gasPriceStr, codeStr string) (string, error)

func (*XEth) TxCountAt

func (self *XEth) TxCountAt(address string) int

func (*XEth) UninstallFilter

func (self *XEth) UninstallFilter(id int) bool

func (*XEth) UninstallWhisperFilter

func (p *XEth) UninstallWhisperFilter(id int) bool

UninstallWhisperFilter disables and removes an existing filter.

func (*XEth) Whisper

func (self *XEth) Whisper() *Whisper

func (*XEth) WhisperMessages

func (self *XEth) WhisperMessages(id int) []WhisperMessage

WhisperMessages retrieves all the known messages that match a specific filter.

func (*XEth) WhisperMessagesChanged

func (self *XEth) WhisperMessagesChanged(id int) []WhisperMessage

WhisperMessagesChanged retrieves all the new messages matched by a filter since the last retrieval

func (*XEth) WhisperVersion

func (self *XEth) WhisperVersion() string

func (*XEth) WithState

func (self *XEth) WithState(statedb *state.StateDB) *XEth

Jump to

Keyboard shortcuts

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