Tezos: generic resource fetching service
Library tezos-requester
module type PARAMETERS = sig ... end

Wrapper for the types being used, to avoid repetitions.

module Disk_memory_table (P : PARAMETERS) : sig ... end

A disk table, that is in fact entirely in memory.

A simple memory table backed by Hashtbl

module Simple_probe (P : PARAMETERS) : Requester.PROBE with type key = P.key and type param = bool and type notified_value = P.value and type value = P.value

An instance of PROBE that uses a bool parameter * to decide whether the check goes through or not

module Simple_request (P : PARAMETERS) : sig ... end

An instance of REQUEST that solely registers incoming requests

module Make_memory_full_requester (H : Requester.HASH) (P : PARAMETERS with type key = H.t) (R : Requester.REQUEST with type param = unit and type key = H.t) : Requester.FULL_REQUESTER with type key = H.t and type value = P.value and type param = bool and type request_param = unit and type notified_value = P.value and type store = Disk_memory_table(P).store

A helper to avoid having to use the full-fledged Requester.Make * functor. We take the Requester.REQUEST module as parameter (instead * of hardcoding the use of Simple_request), because * callers that use Simple_request likely want to observe * the underlying effects (see the ref in Simple_request) and hence * want to pass their own instance. * * Like Requester.Make, this returns an instance of FULL_REQUESTER. * Note that, contrary to a production requester, the instance returned * by this functor does not use the disk, it runs entirely in memory.