Mavryk_raw_protocol_alpha.Slot_repr
Slot index representation
A slot index is in essence a bounded whole number. That is, it is not allowed to overflow max_value
, nor does it wrap when calling succ
max_value
. In this case it returns an Invalid_slot
error.
type slot = t
val encoding : t Mavryk_protocol_environment_alpha.Data_encoding.t
val zero : t
val max_value : t
Upper bound on the value a slot index can take
val of_int : int -> t Mavryk_protocol_environment_alpha.Error_monad.tzresult
of_int i
creates a slot index from integer i
.
val of_int_do_not_use_except_for_parameters : int -> t
of_int_do_not_use_except_for_parameters i
is an unchecked construction function.
It may be used in cases where one knows 0 <= i <= max_value
, e.g., when creating protocol parameters.
When in doubt, use of_int
or of_int_exn
.
val succ : t -> t Mavryk_protocol_environment_alpha.Error_monad.tzresult
succ n
either returns an Invalid_slot
error if n
is max_value
or ok
value
otherwise.
val to_int : t -> int
to_int slot
returns the integral representation of a slot index. This value is always a whole number.
val pp : Mavryk_protocol_environment_alpha.Format.formatter -> t -> unit
module Map : Mavryk_protocol_environment_alpha.Map.S with type key = t
module Set : Mavryk_protocol_environment_alpha.Set.S with type elt = t
include Mavryk_protocol_environment_alpha.Compare.S with type t := t
module Range : sig ... end
module Internal_for_tests : sig ... end