package octez-shell-libs
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=aa2f5bc99cc4ca2217c52a1af2a2cdfd3b383208cb859ca2e79ca0903396ca1d
    
    
  sha512=d68bb3eb615e3dcccc845fddfc9901c95b3c6dc8e105e39522ce97637b1308a7fa7aa1d271351d5933febd7476b2819e1694f31198f1f0919681f1f9cc97cb3a
    
    
  doc/octez-shell-libs.shell/Tezos_shell/Prevalidator_pending_operations/index.html
Module Tezos_shell.Prevalidator_pending_operationsSource
The priority of a pending operation.
A priority is attached to each pending operation.
This type is used for data representing pending operations of the prevalidator. Any iterator on this structure will process operations with `High priority first, followed by `Medium and finally `Low priority.
module Sized_set : 
  Tezos_base.Sized.SizedSet
    with type set := Tezos_base.TzPervasives.Operation_hash.Set.tThis module implements a sized-set data-structure.
hashes p returns the set of hashes contained in p
val operations : 
  'protocol_data t ->
  'protocol_data Shell_operation.operation
    Tezos_base.TzPervasives.Operation_hash.Map.toperations p returns the Map of bindings oph -> op contained in p
is_empty p returns true if p has operations, false otherwise.
mem oph p returns true if oph is found in p, false otherwise.
Complexity is O(log(n)), where n is the number of operations (hashes) in the structure.
val add : 
  'protocol_data Shell_operation.operation ->
  priority ->
  'protocol_data t ->
  'protocol_data tadd oph op p prio records the operation op whose hash is oph and whose priority is prio in p.
Complexity is O(log(n)), where n is the number of operations (hashes) in the structure.
It is unspecified behaviour to call this function with a hash (oph) which is already recorded in the data-structure (p). It is your responsibility as the caller of the function to ensure this.
remove oph op p removes the binding oph from p.
Complexity is O(log(n)), where n is the number of operations (hashes) in the structure.
cardinal p returns the number of operations (hashes) in p.
Complexity is O(n), where n is the number of operations (hashes) in the structure.
val fold : 
  (priority ->
    Tezos_base.TzPervasives.Operation_hash.t ->
    'protocol_data Shell_operation.operation ->
    'a ->
    'a) ->
  'protocol_data t ->
  'a ->
  'afold f p acc applies the function f on every binding oph |-> op of priority prio in p. The acc is passed to and (possibly) updated by every call to f.
We iterate on operations with `High priority first, then on those with `Low priority. For operations with the same priority, the iteration order is defined Operation_hash.compare function (operations with small hashes are processed first).
val iter : 
  (priority ->
    Tezos_base.TzPervasives.Operation_hash.t ->
    'protocol_data Shell_operation.operation ->
    unit) ->
  'protocol_data t ->
  unititer f p is similar to fold where acc is unit
val fold_es : 
  (priority ->
    Tezos_base.TzPervasives.Operation_hash.t ->
    'protocol_data Shell_operation.operation ->
    'a ->
    ('a, 'b) result Lwt.t) ->
  'protocol_data t ->
  'a ->
  ('a, 'b) result Lwt.tfold_es f p acc is the Lwt version of fold, except that fold_es returns wihtout iterating over all the elements of the list as soon as a value Error e is returned by f