package octez-internal-libs
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
A package that contains some libraries used by the Octez suite
Install
dune-project
Dependency
Authors
Maintainers
Sources
tezos-octez-v20.1.tag.bz2
sha256=ddfb5076eeb0b32ac21c1eed44e8fc86a6743ef18ab23fff02d36e365bb73d61
sha512=d22a827df5146e0aa274df48bc2150b098177ff7e5eab52c6109e867eb0a1f0ec63e6bfbb0e3645a6c2112de3877c91a17df32ccbff301891ce4ba630c997a65
doc/octez-internal-libs.irmin/Irmin/Perms/index.html
Module Irmin.PermsSource
Types representing permissions 'perms for performing operations on a certain type 'perms t.
They are intended to be used as phantom parameters of the types that they control access to. As an example, consider the following type of references with permissions:
module Ref : sig
type (+'a, -'perms) t
val create : 'a -> ('a, read_write) t
val get : ('a, [> read ]) t -> 'a
val set : ('a, [> write ]) t -> 'a -> unit
endThis type allows references to be created with arbitrary read-write access. One can then create weaker views onto the reference – with access to fewer operations – by upcasting:
let read_only t = (t :> (_, read) Ref.t)
let write_only t = (t :> (_, write) Ref.t)Note that the 'perms phantom type parameter should be contravariant: it's safe to discard permissions, but not to gain new ones.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>