 Documentation
      ¶
      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.