Documentation ¶
Index ¶
- type Delta
- func (d Delta) Delete(owner, controller, key string)
- func (d Delta) Get(owner, controller, key string) (value flow.RegisterValue, exists bool)
- func (d Delta) HasBeenDeleted(owner, controller, key string) bool
- func (d Delta) MarshalJSON() ([]byte, error)
- func (d Delta) MergeWith(delta Delta)
- func (d Delta) RegisterIDs() []flow.RegisterID
- func (d Delta) RegisterUpdates() ([]flow.RegisterID, []flow.RegisterValue)
- func (d Delta) Set(owner, controller, key string, value flow.RegisterValue)
- func (d Delta) UnmarshalJSON(data []byte) error
- type GetRegisterFunc
- type Mapping
- type Snapshot
- type View
- func (v *View) Delete(owner, controller, key string)
- func (v *View) Delta() Delta
- func (v *View) Get(owner, controller, key string) (flow.RegisterValue, error)
- func (r *View) Interactions() *Snapshot
- func (v *View) MergeView(child *View)
- func (v *View) NewChild() *View
- func (r *View) ReadsCount() uint64
- func (v *View) Set(owner, controller, key string, value flow.RegisterValue)
- func (v *View) SpockSecret() []byte
- func (v *View) Touch(owner, controller, key string)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Delta ¶
type Delta struct { Data map[string]flow.RegisterValue ReadMappings map[string]Mapping WriteMappings map[string]Mapping }
A Delta is a record of ledger mutations.
func (Delta) Get ¶
func (d Delta) Get(owner, controller, key string) (value flow.RegisterValue, exists bool)
Get reads a register value from this delta.
This function will return nil if the given key has been deleted in this delta.
func (Delta) HasBeenDeleted ¶
HasBeenDeleted returns true if the given key has been deleted in this delta.
func (Delta) MarshalJSON ¶
func (Delta) RegisterIDs ¶
func (d Delta) RegisterIDs() []flow.RegisterID
RegisterIDs returns the list of registerIDs inside this delta
func (Delta) RegisterUpdates ¶
func (d Delta) RegisterUpdates() ([]flow.RegisterID, []flow.RegisterValue)
RegisterUpdates returns all registers that were updated by this delta. ids are returned sorted, in ascending order
func (Delta) Set ¶
func (d Delta) Set(owner, controller, key string, value flow.RegisterValue)
Set records an update in this delta.
func (Delta) UnmarshalJSON ¶
type GetRegisterFunc ¶
type GetRegisterFunc func(owner, controller, key string) (flow.RegisterValue, error)
GetRegisterFunc is a function that returns the value for a register.
type Snapshot ¶
type Snapshot struct { Delta Delta Reads []flow.RegisterID SpockSecret []byte }
Snapshot is set of interactions with the register
func (*Snapshot) AllRegisters ¶
func (r *Snapshot) AllRegisters() []flow.RegisterID
AllRegisters returns all the register IDs either in read or delta
func (*Snapshot) RegisterTouches ¶
func (r *Snapshot) RegisterTouches() []flow.RegisterID
RegisterTouches returns the register IDs touched by this view (either read or write)
type View ¶
type View struct {
// contains filtered or unexported fields
}
A View is a read-only view into a ledger stored in an underlying data source.
A ledger view records writes to a delta that can be used to update the underlying data source.
func NewView ¶
func NewView(readFunc GetRegisterFunc) *View
NewView instantiates a new ledger view with the provided read function.
func (*View) Get ¶
func (v *View) Get(owner, controller, key string) (flow.RegisterValue, error)
Get gets a register value from this view.
This function will return an error if it fails to read from the underlying data source for this view.
func (*View) Interactions ¶
Snapshot returns copy of current state of interactions with a View
func (*View) MergeView ¶
MergeView applies the changes from a the given view to this view. TODO rename this, this is not actually a merge as we can't merge readFunc s.
func (*View) NewChild ¶
NewChild generates a new child view, with the current view as the base, sharing the Get function
func (*View) ReadsCount ¶
ReadsCount returns the total number of reads performed on this view including all child views
func (*View) Set ¶
func (v *View) Set(owner, controller, key string, value flow.RegisterValue)
Set sets a register value in this view.
func (*View) SpockSecret ¶
SpockSecret returns the secret value for SPoCK