Documentation ¶
Index ¶
- Constants
- func HasPermission(accountGetter acmstate.AccountGetter, acc *acm.Account, ...) bool
- func HashProposal(p *payload.Proposal) []byte
- func MaybeGetPublicKey(sw acmstate.ReaderWriter, address crypto.Address) (*crypto.PublicKey, error)
- func VerifyIdentity(sw acmstate.ReaderWriter, account *spec.TemplateAccount) (err error)
- type BondContext
- 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)
- func (ctx *CallContext) Sync(cache *acmstate.Cache, metaCache *acmstate.MetadataCache) error
- type Context
- type GovernanceContext
- type IdentifyContext
- type NameContext
- type PermissionsContext
- type ProposalContext
- type SendContext
- type UnbondContext
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
func HashProposal ¶
func MaybeGetPublicKey ¶
func VerifyIdentity ¶
func VerifyIdentity(sw acmstate.ReaderWriter, account *spec.TemplateAccount) (err error)
Types ¶
type BondContext ¶
type BondContext struct { State acmstate.ReaderWriter ValidatorSet validator.ReaderWriter Logger *logging.Logger // contains filtered or unexported fields }
func (*BondContext) Execute ¶
func (ctx *BondContext) Execute(txe *exec.TxExecution, p payload.Payload) error
Execute a BondTx to add or remove a new validator
type CallContext ¶
type CallContext struct { VMS *vms.VirtualMachines State acmstate.ReaderWriter MetadataState acmstate.MetadataReaderWriter Blockchain engine.Blockchain RunCall bool 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
func (*CallContext) Sync ¶
func (ctx *CallContext) Sync(cache *acmstate.Cache, metaCache *acmstate.MetadataCache) error
type GovernanceContext ¶
type GovernanceContext struct { State acmstate.ReaderWriter ValidatorSet validator.ReaderWriter 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) UpdateAccount ¶
func (ctx *GovernanceContext) UpdateAccount(account *acm.Account, update *spec.TemplateAccount) (ev *exec.GovernAccountEvent, err error)
type IdentifyContext ¶
type IdentifyContext struct { NodeWriter registry.ReaderWriter StateReader acmstate.Reader Logger *logging.Logger // contains filtered or unexported fields }
func (*IdentifyContext) Execute ¶
func (ctx *IdentifyContext) Execute(txe *exec.TxExecution, p payload.Payload) error
type NameContext ¶
type NameContext struct { Blockchain engine.Blockchain State 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 { State 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 ¶
type ProposalContext struct { ChainID string ProposalThreshold uint64 State acmstate.ReaderWriter ValidatorSet validator.Writer ProposalReg proposal.ReaderWriter Logger *logging.Logger Contexts map[payload.Type]Context // contains filtered or unexported fields }
func (*ProposalContext) Execute ¶
func (ctx *ProposalContext) Execute(txe *exec.TxExecution, p payload.Payload) error
type SendContext ¶
type SendContext struct { State acmstate.ReaderWriter Logger *logging.Logger // contains filtered or unexported fields }
func (*SendContext) Execute ¶
func (ctx *SendContext) Execute(txe *exec.TxExecution, p payload.Payload) error
type UnbondContext ¶
type UnbondContext struct { State acmstate.ReaderWriter ValidatorSet validator.ReaderWriter Logger *logging.Logger // contains filtered or unexported fields }
func (*UnbondContext) Execute ¶
func (ctx *UnbondContext) Execute(txe *exec.TxExecution, p payload.Payload) error
Execute an UnbondTx to remove a validator
Click to show internal directories.
Click to hide internal directories.