Help us shape the future of Go! Take the 2026 Go Developer Survey

contexts

package
v0.24.2 Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2019 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const GasLimit = uint64(1000000)

TODO: make configurable

Variables

This section is empty.

Functions

func HasPermission

func HasPermission(accountGetter acmstate.AccountGetter, acc *acm.Account, perm permission.PermFlag, logger *logging.Logger) bool

Get permission on an account or fall back to global value

Types

type Blockchain added in v0.24.0

type Blockchain interface {
	BlockHash(height uint64) []byte
	LastBlockTime() time.Time
	BlockchainHeight
}

Execution's sufficient view of blockchain

type BlockchainHeight added in v0.24.0

type BlockchainHeight interface {
	LastBlockHeight() uint64
}

type CallContext

type CallContext struct {
	StateWriter acmstate.ReaderWriter
	RunCall     bool
	Blockchain  Blockchain
	VMOptions   []func(*evm.VM)
	Logger      *logging.Logger
	// contains filtered or unexported fields
}

func (*CallContext) CallEvents

func (ctx *CallContext) CallEvents(err error)

func (*CallContext) Check

func (ctx *CallContext) Check(inAcc *acm.Account, value uint64) error

func (*CallContext) Deliver

func (ctx *CallContext) Deliver(inAcc, outAcc *acm.Account, value uint64) error

func (*CallContext) Execute

func (ctx *CallContext) Execute(txe *exec.TxExecution, p payload.Payload) error

func (*CallContext) Precheck

func (ctx *CallContext) Precheck() (*acm.Account, *acm.Account, error)

type Context added in v0.23.0

type Context interface {
	Execute(txe *exec.TxExecution, p payload.Payload) error
}

type GovernanceContext

type GovernanceContext struct {
	StateWriter  acmstate.ReaderWriter
	ValidatorSet validator.Alterer
	Logger       *logging.Logger
	// contains filtered or unexported fields
}

func (*GovernanceContext) Execute

func (ctx *GovernanceContext) Execute(txe *exec.TxExecution, p payload.Payload) error

GovTx provides a set of TemplateAccounts and GovernanceContext tries to alter the chain state to match the specification given

func (*GovernanceContext) MaybeGetPublicKey added in v0.20.1

func (ctx *GovernanceContext) MaybeGetPublicKey(address crypto.Address) (*crypto.PublicKey, error)

func (*GovernanceContext) UpdateAccount added in v0.20.1

func (ctx *GovernanceContext) UpdateAccount(account *acm.Account, update *spec.TemplateAccount) (ev *exec.GovernAccountEvent, err error)

type NameContext

type NameContext struct {
	Blockchain  BlockchainHeight
	StateWriter acmstate.ReaderWriter
	NameReg     names.ReaderWriter
	Logger      *logging.Logger
	// contains filtered or unexported fields
}

func (*NameContext) Execute

func (ctx *NameContext) Execute(txe *exec.TxExecution, p payload.Payload) error

type PermissionsContext

type PermissionsContext struct {
	StateWriter acmstate.ReaderWriter
	Logger      *logging.Logger
	// contains filtered or unexported fields
}

func (*PermissionsContext) Execute

func (ctx *PermissionsContext) Execute(txe *exec.TxExecution, p payload.Payload) error

type ProposalContext added in v0.23.0

type ProposalContext struct {
	ChainID           string
	ProposalThreshold uint64
	StateWriter       acmstate.ReaderWriter
	ValidatorSet      validator.Writer
	ProposalReg       proposal.ReaderWriter
	Logger            *logging.Logger

	Contexts map[payload.Type]Context
	// contains filtered or unexported fields
}

func (*ProposalContext) Execute added in v0.23.0

func (ctx *ProposalContext) Execute(txe *exec.TxExecution, p payload.Payload) error

type SendContext

type SendContext struct {
	StateWriter acmstate.ReaderWriter
	Logger      *logging.Logger
	// contains filtered or unexported fields
}

func (*SendContext) Execute

func (ctx *SendContext) Execute(txe *exec.TxExecution, p payload.Payload) error

Jump to

Keyboard shortcuts

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