Library
Module
Module type
Parameter
Class
Class type
Lift a synchronous S.Now
backend to an asynchronous S.Future
interface.
type +'a io = 'a IO.t
The type of a blocking computation that will produce a value of type 'a
type t = Now.t
The type of a handle on the backend.
type key = Now.key
The type of a session key.
type value = Now.value
The type of a session value.
type period = Now.period
The type of a session expiry period.
default_period t
returns default period after which session keys will expire. Depending on the backend, this value may vary over time.
generate ?expiry ?value t
will allocate a new session in the backend t
and return its associated key
. The session will expire expiry
seconds from now, defaulting to default_period t
if one is not explicitly specified.
The key should be unique, though it may not be in order to allow implementations that use randomness or hashing to conform to this interface.
clear t key
removes key
from the backend t
. The backend may choose to persist the session value beyond this call. If it does any subsequent operations involving key
behave as if it was not there.
get t key
returns the session value, if present and unexpired, together with its expiry period as of now.