Documentation ¶
Index ¶
- Constants
- func HasPermission(accountGetter acmstate.AccountGetter, acc *acm.Account, ...) bool
- type Blockchain
- type BlockchainHeight
- type CallContext
- func (ctx *CallContext) CallEvents(err error)
- func (ctx *CallContext) Check(inAcc *acm.Account, value uint64) error
- func (ctx *CallContext) Deliver(inAcc, outAcc *acm.Account, value uint64) error
- func (ctx *CallContext) Execute(txe *exec.TxExecution, p payload.Payload) error
- func (ctx *CallContext) Precheck() (*acm.Account, *acm.Account, error)
- type Context
- type GovernanceContext
- func (ctx *GovernanceContext) Execute(txe *exec.TxExecution, p payload.Payload) error
- func (ctx *GovernanceContext) MaybeGetPublicKey(address crypto.Address) (*crypto.PublicKey, error)
- func (ctx *GovernanceContext) UpdateAccount(account *acm.Account, update *spec.TemplateAccount) (ev *exec.GovernAccountEvent, err error)
- type NameContext
- type PermissionsContext
- type ProposalContext
- type SendContext
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) 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
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 (*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
Click to show internal directories.
Click to hide internal directories.