diff --git a/zarr-eio/Zarr_eio/Storage/HttpStore/Array/index.html b/zarr-eio/Zarr_eio/Storage/HttpStore/Array/index.html new file mode 100644 index 0000000..f56927a --- /dev/null +++ b/zarr-eio/Zarr_eio/Storage/HttpStore/Array/index.html @@ -0,0 +1,23 @@ + +Array (zarr-eio.Zarr_eio.Storage.HttpStore.Array)

Module HttpStore.Array

val create : + ?sep:[< `Dot | `Slash Slash ] -> + ?dimension_names:string option list -> + ?attributes:Yojson.Safe.t -> + codecs:Zarr.Codecs.codec_chain -> + shape:int array -> + chunks:int array -> + 'a Zarr.Ndarray.dtype -> + 'a -> + Zarr.Node.Array.t -> + t -> + unit Deferred.t

create ~sep ~dimension_names ~attributes ~codecs ~shape ~chunks kind fill node t creates an array node in store t where:

  • Separator sep is used in the array's chunk key encoding.
  • Dimension names dimension_names and user attributes attributes are included in it's metadata document.
  • A codec chain defined by codecs.
  • The array has shape shape and chunk shape chunks.
  • The array has data kind kind and fill value fv.
  • raises Codecs.Bytes_to_bytes_invariant

    if codecs contains more than one bytes->bytes codec.

  • raises Codecs.Invalid_transpose_order

    if codecs contains a transpose codec with invalid order array.

  • raises Codecs.Invalid_sharding_chunk_shape

    if codecs contains a shardingindexed codec with an incorrect inner chunk shape.

metadata node t returns the metadata of array node node.

  • raises Key_not_found

    if node is not a member of store t.

val delete : t -> Zarr.Node.Array.t -> unit Deferred.t

delete t n erases array node n from store t. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Array.t -> bool Deferred.t

exists t n returns true if array node n is a member of store t and false otherwise.

val write : + t -> + Zarr.Node.Array.t -> + Zarr.Ndarray.Indexing.index array -> + 'a Zarr.Ndarray.t -> + unit Deferred.t

write t n s x writes n-dimensional array x to the slice s of array node n in store t.

  • raises Invalid_array_slice

    if the ndarray x size does not equal slice s.

  • raises Invalid_data_type

    if the kind of x is not compatible with node n's data type as described in its metadata document.

read t n s k reads an n-dimensional array of size determined by slice s from array node n.

  • raises Invalid_data_type

    if kind k is not compatible with node n's data type as described in its metadata document.

  • raises Invalid_array_slice

    if the slice s is not a valid slice of array node n.

val reshape : t -> Zarr.Node.Array.t -> int array -> unit Deferred.t

reshape t n shape resizes array node n of store t into new size shape. Note that when the resizing involves shrinking an array along any dimensions, any old unreachable chunks that fall outside of the array's new shape are deleted from the store.

  • raises Invalid_resize_shape

    if shape does not have the same dimensions as n's shape.

  • raises Key_not_found

    if node n is not a member of store t.

val rename : t -> Zarr.Node.Array.t -> string -> unit Deferred.t

rename t n name changes the name of array node n in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-eio/Zarr_eio/Storage/HttpStore/Group/index.html b/zarr-eio/Zarr_eio/Storage/HttpStore/Group/index.html new file mode 100644 index 0000000..2bba6fe --- /dev/null +++ b/zarr-eio/Zarr_eio/Storage/HttpStore/Group/index.html @@ -0,0 +1,5 @@ + +Group (zarr-eio.Zarr_eio.Storage.HttpStore.Group)

Module HttpStore.Group

val create : ?attrs:Yojson.Safe.t -> t -> Zarr.Node.Group.t -> unit Deferred.t

create ?attrs t node creates a group node in store t containing attributes attrs. This is a no-op if node is already a member of this store.

metadata node t returns the metadata of group node node.

  • raises Key_not_found

    if node is not a member of store t.

val children : + t -> + Zarr.Node.Group.t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

children t n returns a tuple of child nodes of group node n. This operation returns a pair of empty lists if node n has no children or is not a member of store t.

  • raises Parse_error

    if any child node has invalid node_type metadata.

val delete : t -> Zarr.Node.Group.t -> unit Deferred.t

delete t n erases group node n from store t. This also erases all child nodes of n. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Group.t -> bool Deferred.t

exists t n returns true if group node n is a member of store t and false otherwise.

val rename : t -> Zarr.Node.Group.t -> string -> unit Deferred.t

rename t g name changes the name of group node g in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-eio/Zarr_eio/Storage/HttpStore/index.html b/zarr-eio/Zarr_eio/Storage/HttpStore/index.html new file mode 100644 index 0000000..eb45939 --- /dev/null +++ b/zarr-eio/Zarr_eio/Storage/HttpStore/index.html @@ -0,0 +1,4 @@ + +HttpStore (zarr-eio.Zarr_eio.Storage.HttpStore)

Module Storage.HttpStore

exception Not_implemented
exception Request_failed of int * string
include Zarr.Storage.STORE with module Deferred = Deferred
module Deferred = Deferred
type t

The storage type.

module Group : sig ... end
module Array : sig ... end
val hierarchy : + t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

hierarchy t returns p where p is a pair of lists representing all nodes in store t. The first element of the pair is a list of all array nodes, and the second element is a list of all group nodes. This operation returns a pair of empty lists if store t is empty.

  • raises Parse_error

    if any node has invalid node_type metadata.

val clear : t -> unit Deferred.t

clear t clears the store t by deleting all nodes. If the store is already empty, this is a no-op.

val with_open : net:_ Eio.Net.t -> Uri.t -> (t -> 'a) -> 'a
diff --git a/zarr-eio/Zarr_eio/Storage/index.html b/zarr-eio/Zarr_eio/Storage/index.html index 7a552d6..bb48150 100644 --- a/zarr-eio/Zarr_eio/Storage/index.html +++ b/zarr-eio/Zarr_eio/Storage/index.html @@ -1,2 +1,2 @@ -Storage (zarr-eio.Zarr_eio.Storage)

Module Zarr_eio.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a

An Eio-aware in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

An Eio-aware Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

An Eio-aware local filesystem storage backend for a Zarr v3 hierarchy.

+Storage (zarr-eio.Zarr_eio.Storage)

Module Zarr_eio.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a

An Eio-aware in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

An Eio-aware Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

An Eio-aware local filesystem storage backend for a Zarr v3 hierarchy.

module HttpStore : sig ... end
diff --git a/zarr-lwt/Zarr_lwt/Storage/HttpStore/Array/index.html b/zarr-lwt/Zarr_lwt/Storage/HttpStore/Array/index.html new file mode 100644 index 0000000..dfec038 --- /dev/null +++ b/zarr-lwt/Zarr_lwt/Storage/HttpStore/Array/index.html @@ -0,0 +1,23 @@ + +Array (zarr-lwt.Zarr_lwt.Storage.HttpStore.Array)

Module HttpStore.Array

val create : + ?sep:[< `Dot | `Slash Slash ] -> + ?dimension_names:string option list -> + ?attributes:Yojson.Safe.t -> + codecs:Zarr.Codecs.codec_chain -> + shape:int array -> + chunks:int array -> + 'a Zarr.Ndarray.dtype -> + 'a -> + Zarr.Node.Array.t -> + t -> + unit Deferred.t

create ~sep ~dimension_names ~attributes ~codecs ~shape ~chunks kind fill node t creates an array node in store t where:

  • Separator sep is used in the array's chunk key encoding.
  • Dimension names dimension_names and user attributes attributes are included in it's metadata document.
  • A codec chain defined by codecs.
  • The array has shape shape and chunk shape chunks.
  • The array has data kind kind and fill value fv.
  • raises Codecs.Bytes_to_bytes_invariant

    if codecs contains more than one bytes->bytes codec.

  • raises Codecs.Invalid_transpose_order

    if codecs contains a transpose codec with invalid order array.

  • raises Codecs.Invalid_sharding_chunk_shape

    if codecs contains a shardingindexed codec with an incorrect inner chunk shape.

metadata node t returns the metadata of array node node.

  • raises Key_not_found

    if node is not a member of store t.

val delete : t -> Zarr.Node.Array.t -> unit Deferred.t

delete t n erases array node n from store t. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Array.t -> bool Deferred.t

exists t n returns true if array node n is a member of store t and false otherwise.

val write : + t -> + Zarr.Node.Array.t -> + Zarr.Ndarray.Indexing.index array -> + 'a Zarr.Ndarray.t -> + unit Deferred.t

write t n s x writes n-dimensional array x to the slice s of array node n in store t.

  • raises Invalid_array_slice

    if the ndarray x size does not equal slice s.

  • raises Invalid_data_type

    if the kind of x is not compatible with node n's data type as described in its metadata document.

read t n s k reads an n-dimensional array of size determined by slice s from array node n.

  • raises Invalid_data_type

    if kind k is not compatible with node n's data type as described in its metadata document.

  • raises Invalid_array_slice

    if the slice s is not a valid slice of array node n.

val reshape : t -> Zarr.Node.Array.t -> int array -> unit Deferred.t

reshape t n shape resizes array node n of store t into new size shape. Note that when the resizing involves shrinking an array along any dimensions, any old unreachable chunks that fall outside of the array's new shape are deleted from the store.

  • raises Invalid_resize_shape

    if shape does not have the same dimensions as n's shape.

  • raises Key_not_found

    if node n is not a member of store t.

val rename : t -> Zarr.Node.Array.t -> string -> unit Deferred.t

rename t n name changes the name of array node n in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-lwt/Zarr_lwt/Storage/HttpStore/Group/index.html b/zarr-lwt/Zarr_lwt/Storage/HttpStore/Group/index.html new file mode 100644 index 0000000..5a8cb58 --- /dev/null +++ b/zarr-lwt/Zarr_lwt/Storage/HttpStore/Group/index.html @@ -0,0 +1,5 @@ + +Group (zarr-lwt.Zarr_lwt.Storage.HttpStore.Group)

Module HttpStore.Group

val create : ?attrs:Yojson.Safe.t -> t -> Zarr.Node.Group.t -> unit Deferred.t

create ?attrs t node creates a group node in store t containing attributes attrs. This is a no-op if node is already a member of this store.

metadata node t returns the metadata of group node node.

  • raises Key_not_found

    if node is not a member of store t.

val children : + t -> + Zarr.Node.Group.t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

children t n returns a tuple of child nodes of group node n. This operation returns a pair of empty lists if node n has no children or is not a member of store t.

  • raises Parse_error

    if any child node has invalid node_type metadata.

val delete : t -> Zarr.Node.Group.t -> unit Deferred.t

delete t n erases group node n from store t. This also erases all child nodes of n. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Group.t -> bool Deferred.t

exists t n returns true if group node n is a member of store t and false otherwise.

val rename : t -> Zarr.Node.Group.t -> string -> unit Deferred.t

rename t g name changes the name of group node g in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-lwt/Zarr_lwt/Storage/HttpStore/index.html b/zarr-lwt/Zarr_lwt/Storage/HttpStore/index.html new file mode 100644 index 0000000..7f2fd8e --- /dev/null +++ b/zarr-lwt/Zarr_lwt/Storage/HttpStore/index.html @@ -0,0 +1,10 @@ + +HttpStore (zarr-lwt.Zarr_lwt.Storage.HttpStore)

Module Storage.HttpStore

exception Not_implemented
exception Request_failed of int * string
include Zarr.Storage.STORE with module Deferred = Deferred
module Deferred = Deferred
type t

The storage type.

module Group : sig ... end
module Array : sig ... end
val hierarchy : + t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

hierarchy t returns p where p is a pair of lists representing all nodes in store t. The first element of the pair is a list of all array nodes, and the second element is a list of all group nodes. This operation returns a pair of empty lists if store t is empty.

  • raises Parse_error

    if any node has invalid node_type metadata.

val clear : t -> unit Deferred.t

clear t clears the store t by deleting all nodes. If the store is already empty, this is a no-op.

val with_open : + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a Lwt.t) -> + 'a Lwt.t
diff --git a/zarr-lwt/Zarr_lwt/Storage/index.html b/zarr-lwt/Zarr_lwt/Storage/index.html index 620c9a5..28c7b6a 100644 --- a/zarr-lwt/Zarr_lwt/Storage/index.html +++ b/zarr-lwt/Zarr_lwt/Storage/index.html @@ -1,2 +1,2 @@ -Storage (zarr-lwt.Zarr_lwt.Storage)

Module Zarr_lwt.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a Lwt.t

An Lwt-aware in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

An Lwt-aware Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

An Lwt-aware local filesystem storage backend for a Zarr V3 hierarchy.

module AmazonS3Store : sig ... end

An Lwt-aware Amazon S3 bucket storage backend for a Zarr V3 hierarchy.

+Storage (zarr-lwt.Zarr_lwt.Storage)

Module Zarr_lwt.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a Lwt.t

An Lwt-aware in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

An Lwt-aware Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

An Lwt-aware local filesystem storage backend for a Zarr V3 hierarchy.

module HttpStore : sig ... end
module AmazonS3Store : sig ... end

An Lwt-aware Amazon S3 bucket storage backend for a Zarr V3 hierarchy.

diff --git a/zarr-sync/Zarr_sync/Storage/HttpStore/Array/index.html b/zarr-sync/Zarr_sync/Storage/HttpStore/Array/index.html new file mode 100644 index 0000000..298b2e7 --- /dev/null +++ b/zarr-sync/Zarr_sync/Storage/HttpStore/Array/index.html @@ -0,0 +1,23 @@ + +Array (zarr-sync.Zarr_sync.Storage.HttpStore.Array)

Module HttpStore.Array

val create : + ?sep:[< `Dot | `Slash Slash ] -> + ?dimension_names:string option list -> + ?attributes:Yojson.Safe.t -> + codecs:Zarr.Codecs.codec_chain -> + shape:int array -> + chunks:int array -> + 'a Zarr.Ndarray.dtype -> + 'a -> + Zarr.Node.Array.t -> + t -> + unit Deferred.t

create ~sep ~dimension_names ~attributes ~codecs ~shape ~chunks kind fill node t creates an array node in store t where:

  • Separator sep is used in the array's chunk key encoding.
  • Dimension names dimension_names and user attributes attributes are included in it's metadata document.
  • A codec chain defined by codecs.
  • The array has shape shape and chunk shape chunks.
  • The array has data kind kind and fill value fv.
  • raises Codecs.Bytes_to_bytes_invariant

    if codecs contains more than one bytes->bytes codec.

  • raises Codecs.Invalid_transpose_order

    if codecs contains a transpose codec with invalid order array.

  • raises Codecs.Invalid_sharding_chunk_shape

    if codecs contains a shardingindexed codec with an incorrect inner chunk shape.

metadata node t returns the metadata of array node node.

  • raises Key_not_found

    if node is not a member of store t.

val delete : t -> Zarr.Node.Array.t -> unit Deferred.t

delete t n erases array node n from store t. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Array.t -> bool Deferred.t

exists t n returns true if array node n is a member of store t and false otherwise.

val write : + t -> + Zarr.Node.Array.t -> + Zarr.Ndarray.Indexing.index array -> + 'a Zarr.Ndarray.t -> + unit Deferred.t

write t n s x writes n-dimensional array x to the slice s of array node n in store t.

  • raises Invalid_array_slice

    if the ndarray x size does not equal slice s.

  • raises Invalid_data_type

    if the kind of x is not compatible with node n's data type as described in its metadata document.

read t n s k reads an n-dimensional array of size determined by slice s from array node n.

  • raises Invalid_data_type

    if kind k is not compatible with node n's data type as described in its metadata document.

  • raises Invalid_array_slice

    if the slice s is not a valid slice of array node n.

val reshape : t -> Zarr.Node.Array.t -> int array -> unit Deferred.t

reshape t n shape resizes array node n of store t into new size shape. Note that when the resizing involves shrinking an array along any dimensions, any old unreachable chunks that fall outside of the array's new shape are deleted from the store.

  • raises Invalid_resize_shape

    if shape does not have the same dimensions as n's shape.

  • raises Key_not_found

    if node n is not a member of store t.

val rename : t -> Zarr.Node.Array.t -> string -> unit Deferred.t

rename t n name changes the name of array node n in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-sync/Zarr_sync/Storage/HttpStore/Group/index.html b/zarr-sync/Zarr_sync/Storage/HttpStore/Group/index.html new file mode 100644 index 0000000..eab0f2c --- /dev/null +++ b/zarr-sync/Zarr_sync/Storage/HttpStore/Group/index.html @@ -0,0 +1,5 @@ + +Group (zarr-sync.Zarr_sync.Storage.HttpStore.Group)

Module HttpStore.Group

val create : ?attrs:Yojson.Safe.t -> t -> Zarr.Node.Group.t -> unit Deferred.t

create ?attrs t node creates a group node in store t containing attributes attrs. This is a no-op if node is already a member of this store.

metadata node t returns the metadata of group node node.

  • raises Key_not_found

    if node is not a member of store t.

val children : + t -> + Zarr.Node.Group.t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

children t n returns a tuple of child nodes of group node n. This operation returns a pair of empty lists if node n has no children or is not a member of store t.

  • raises Parse_error

    if any child node has invalid node_type metadata.

val delete : t -> Zarr.Node.Group.t -> unit Deferred.t

delete t n erases group node n from store t. This also erases all child nodes of n. If node n is not a member of store t then this is a no-op.

val exists : t -> Zarr.Node.Group.t -> bool Deferred.t

exists t n returns true if group node n is a member of store t and false otherwise.

val rename : t -> Zarr.Node.Group.t -> string -> unit Deferred.t

rename t g name changes the name of group node g in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr-sync/Zarr_sync/Storage/HttpStore/index.html b/zarr-sync/Zarr_sync/Storage/HttpStore/index.html new file mode 100644 index 0000000..c584034 --- /dev/null +++ b/zarr-sync/Zarr_sync/Storage/HttpStore/index.html @@ -0,0 +1,10 @@ + +HttpStore (zarr-sync.Zarr_sync.Storage.HttpStore)

Module Storage.HttpStore

exception Not_implemented
exception Request_failed of int * string
include Zarr.Storage.STORE with module Deferred = Deferred
module Deferred = Deferred
type t

The storage type.

module Group : sig ... end
module Array : sig ... end
val hierarchy : + t -> + (Zarr.Node.Array.t list * Zarr.Node.Group.t list) Deferred.t

hierarchy t returns p where p is a pair of lists representing all nodes in store t. The first element of the pair is a list of all array nodes, and the second element is a list of all group nodes. This operation returns a pair of empty lists if store t is empty.

  • raises Parse_error

    if any node has invalid node_type metadata.

val clear : t -> unit Deferred.t

clear t clears the store t by deleting all nodes. If the store is already empty, this is a no-op.

val with_open : + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a) -> + 'a
diff --git a/zarr-sync/Zarr_sync/Storage/index.html b/zarr-sync/Zarr_sync/Storage/index.html index 19f512e..10e9d04 100644 --- a/zarr-sync/Zarr_sync/Storage/index.html +++ b/zarr-sync/Zarr_sync/Storage/index.html @@ -1,2 +1,2 @@ -Storage (zarr-sync.Zarr_sync.Storage)

Module Zarr_sync.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a

A blocking I/O in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

A blocking I/O Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

A blocking I/O local filesystem storage backend for a Zarr v3 hierarchy.

+Storage (zarr-sync.Zarr_sync.Storage)

Module Zarr_sync.Storage

module Deferred : Zarr.Types.Deferred with type 'a t = 'a

A blocking I/O in-memory storage backend for Zarr v3 hierarchy.

module ZipStore : Zarr.Zip.S with module Deferred = Deferred

A blocking I/O Zip file storage backend for a Zarr v3 hierarchy.

module FilesystemStore : sig ... end

A blocking I/O local filesystem storage backend for a Zarr v3 hierarchy.

module HttpStore : sig ... end
diff --git a/zarr/Zarr/Http/Make/Array/index.html b/zarr/Zarr/Http/Make/Array/index.html new file mode 100644 index 0000000..ed4bcf2 --- /dev/null +++ b/zarr/Zarr/Http/Make/Array/index.html @@ -0,0 +1,23 @@ + +Array (zarr.Zarr.Http.Make.Array)

Module Make.Array

val create : + ?sep:[< `Dot | `Slash Slash ] -> + ?dimension_names:string option list -> + ?attributes:Yojson.Safe.t -> + codecs:Codecs.codec_chain -> + shape:int array -> + chunks:int array -> + 'a Ndarray.dtype -> + 'a -> + Node.Array.t -> + t -> + unit Deferred.t

create ~sep ~dimension_names ~attributes ~codecs ~shape ~chunks kind fill node t creates an array node in store t where:

  • Separator sep is used in the array's chunk key encoding.
  • Dimension names dimension_names and user attributes attributes are included in it's metadata document.
  • A codec chain defined by codecs.
  • The array has shape shape and chunk shape chunks.
  • The array has data kind kind and fill value fv.
  • raises Codecs.Bytes_to_bytes_invariant

    if codecs contains more than one bytes->bytes codec.

metadata node t returns the metadata of array node node.

  • raises Key_not_found

    if node is not a member of store t.

val delete : t -> Node.Array.t -> unit Deferred.t

delete t n erases array node n from store t. If node n is not a member of store t then this is a no-op.

val exists : t -> Node.Array.t -> bool Deferred.t

exists t n returns true if array node n is a member of store t and false otherwise.

val write : + t -> + Node.Array.t -> + Ndarray.Indexing.index array -> + 'a Ndarray.t -> + unit Deferred.t

write t n s x writes n-dimensional array x to the slice s of array node n in store t.

  • raises Invalid_array_slice

    if the ndarray x size does not equal slice s.

  • raises Invalid_data_type

    if the kind of x is not compatible with node n's data type as described in its metadata document.

val read : + t -> + Node.Array.t -> + Ndarray.Indexing.index array -> + 'a Ndarray.dtype -> + 'a Ndarray.t Deferred.t

read t n s k reads an n-dimensional array of size determined by slice s from array node n.

  • raises Invalid_data_type

    if kind k is not compatible with node n's data type as described in its metadata document.

  • raises Invalid_array_slice

    if the slice s is not a valid slice of array node n.

val reshape : t -> Node.Array.t -> int array -> unit Deferred.t

reshape t n shape resizes array node n of store t into new size shape. Note that when the resizing involves shrinking an array along any dimensions, any old unreachable chunks that fall outside of the array's new shape are deleted from the store.

  • raises Invalid_resize_shape

    if shape does not have the same dimensions as n's shape.

  • raises Key_not_found

    if node n is not a member of store t.

val rename : t -> Node.Array.t -> string -> unit Deferred.t

rename t n name changes the name of array node n in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr/Zarr/Http/Make/Deferred/Infix/index.html b/zarr/Zarr/Http/Make/Deferred/Infix/index.html new file mode 100644 index 0000000..0a99d1c --- /dev/null +++ b/zarr/Zarr/Http/Make/Deferred/Infix/index.html @@ -0,0 +1,2 @@ + +Infix (zarr.Zarr.Http.Make.Deferred.Infix)

Module Deferred.Infix

val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>>|) : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/Make/Deferred/Syntax/index.html b/zarr/Zarr/Http/Make/Deferred/Syntax/index.html new file mode 100644 index 0000000..17abc43 --- /dev/null +++ b/zarr/Zarr/Http/Make/Deferred/Syntax/index.html @@ -0,0 +1,2 @@ + +Syntax (zarr.Zarr.Http.Make.Deferred.Syntax)

Module Deferred.Syntax

val let* : 'a t -> ('a -> 'b t) -> 'b t
val let+ : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/Make/Deferred/index.html b/zarr/Zarr/Http/Make/Deferred/index.html new file mode 100644 index 0000000..2b3403a --- /dev/null +++ b/zarr/Zarr/Http/Make/Deferred/index.html @@ -0,0 +1,2 @@ + +Deferred (zarr.Zarr.Http.Make.Deferred)

Module Make.Deferred

type 'a t = 'a Deferred.t
val return : 'a -> 'a t
val return_unit : unit t
val iter : ('a -> unit t) -> 'a list -> unit t
val fold_left : ('acc -> 'a -> 'acc t) -> 'acc -> 'a list -> 'acc t
val concat_map : ('a -> 'b list t) -> 'a list -> 'b list t
module Infix : sig ... end
module Syntax : sig ... end
diff --git a/zarr/Zarr/Http/Make/Group/index.html b/zarr/Zarr/Http/Make/Group/index.html new file mode 100644 index 0000000..f6b9491 --- /dev/null +++ b/zarr/Zarr/Http/Make/Group/index.html @@ -0,0 +1,5 @@ + +Group (zarr.Zarr.Http.Make.Group)

Module Make.Group

val create : ?attrs:Yojson.Safe.t -> t -> Node.Group.t -> unit Deferred.t

create ?attrs t node creates a group node in store t containing attributes attrs. This is a no-op if node is already a member of this store.

metadata node t returns the metadata of group node node.

  • raises Key_not_found

    if node is not a member of store t.

val children : + t -> + Node.Group.t -> + (Node.Array.t list * Node.Group.t list) Deferred.t

children t n returns a tuple of child nodes of group node n. This operation returns a pair of empty lists if node n has no children or is not a member of store t.

  • raises Parse_error

    if any child node has invalid node_type metadata.

val delete : t -> Node.Group.t -> unit Deferred.t

delete t n erases group node n from store t. This also erases all child nodes of n. If node n is not a member of store t then this is a no-op.

val exists : t -> Node.Group.t -> bool Deferred.t

exists t n returns true if group node n is a member of store t and false otherwise.

val rename : t -> Node.Group.t -> string -> unit Deferred.t

rename t g name changes the name of group node g in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr/Zarr/Http/Make/argument-1-Deferred/Infix/index.html b/zarr/Zarr/Http/Make/argument-1-Deferred/Infix/index.html new file mode 100644 index 0000000..0a99d1c --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-1-Deferred/Infix/index.html @@ -0,0 +1,2 @@ + +Infix (zarr.Zarr.Http.Make.Deferred.Infix)

Module Deferred.Infix

val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>>|) : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/Make/argument-1-Deferred/Syntax/index.html b/zarr/Zarr/Http/Make/argument-1-Deferred/Syntax/index.html new file mode 100644 index 0000000..17abc43 --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-1-Deferred/Syntax/index.html @@ -0,0 +1,2 @@ + +Syntax (zarr.Zarr.Http.Make.Deferred.Syntax)

Module Deferred.Syntax

val let* : 'a t -> ('a -> 'b t) -> 'b t
val let+ : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/Make/argument-1-Deferred/index.html b/zarr/Zarr/Http/Make/argument-1-Deferred/index.html new file mode 100644 index 0000000..33f06e8 --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-1-Deferred/index.html @@ -0,0 +1,2 @@ + +Deferred (zarr.Zarr.Http.Make.Deferred)

Parameter Make.Deferred

type 'a t
val return : 'a -> 'a t
val return_unit : unit t
val iter : ('a -> unit t) -> 'a list -> unit t
val fold_left : ('acc -> 'a -> 'acc t) -> 'acc -> 'a list -> 'acc t
val concat_map : ('a -> 'b list t) -> 'a list -> 'b list t
module Infix : sig ... end
module Syntax : sig ... end
diff --git a/zarr/Zarr/Http/Make/argument-2-C/Config/index.html b/zarr/Zarr/Http/Make/argument-2-C/Config/index.html new file mode 100644 index 0000000..d8cead3 --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/Config/index.html @@ -0,0 +1,2 @@ + +Config (zarr.Zarr.Http.Make.C.Config)

Module C.Config

type t
val default : t
val verbose : bool -> t -> t
val authmethod : Curl.curlAuth list -> t -> t
val max_redirects : int -> t -> t
val follow_location : bool -> t -> t
val username : string -> t -> t
val password : string -> t -> t
val pp : Stdlib.Format.formatter -> t -> unit
val to_string : t -> string
diff --git a/zarr/Zarr/Http/Make/argument-2-C/Make/argument-1-IO/index.html b/zarr/Zarr/Http/Make/argument-2-C/Make/argument-1-IO/index.html new file mode 100644 index 0000000..cb9d69e --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/Make/argument-1-IO/index.html @@ -0,0 +1,2 @@ + +IO (zarr.Zarr.Http.Make.C.Make.IO)

Parameter Make.IO

type 'a t
val return : 'a -> 'a t
val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>|=) : 'a t -> ('a -> 'b) -> 'b t
val fail : exn -> 'a t
val perform : Curl.t -> Curl.curlCode t
diff --git a/zarr/Zarr/Http/Make/argument-2-C/Make/index.html b/zarr/Zarr/Http/Make/argument-2-C/Make/index.html new file mode 100644 index 0000000..dd37b2c --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/Make/index.html @@ -0,0 +1,37 @@ + +Make (zarr.Zarr.Http.Make.C.Make)

Module C.Make

Parameters

module IO : IO

Signature

type 'a io = 'a IO.t
val http : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:meth -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/Make/argument-2-C/index.html b/zarr/Zarr/Http/Make/argument-2-C/index.html new file mode 100644 index 0000000..0870cf3 --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/index.html @@ -0,0 +1,37 @@ + +C (zarr.Zarr.Http.Make.C)

Parameter Make.C

include module type of Ezcurl_core
module Config : sig ... end
type t = Curl.t
val make : ?set_opts:(t -> unit) -> unit -> t
val delete : t -> unit
val with_client : ?set_opts:(t -> unit) -> (t -> 'a) -> 'a
type response_info = {
  1. ri_response_time : float;
  2. ri_redirect_count : int;
}
val pp_response_info : Stdlib.Format.formatter -> response_info -> unit
val string_of_response_info : response_info -> string
type response = {
  1. code : int;
  2. headers : (string * string) list;
  3. body : string;
  4. info : response_info;
}
val pp_response : Stdlib.Format.formatter -> response -> unit
val string_of_response : response -> string
type meth =
  1. | GET
  2. | POST of Curl.curlHTTPPost list
  3. | PUT
  4. | DELETE
  5. | HEAD
  6. | CONNECT
  7. | OPTIONS
  8. | TRACE
  9. | PATCH
val pp_meth : Stdlib.Format.formatter -> meth -> unit
val string_of_meth : meth -> string
module type IO = sig ... end
module type S = sig ... end
module Make (IO : IO) : sig ... end
include Ezcurl_core.S with type 'a io = 'a Deferred.t
type 'a io = 'a Deferred.t
val http : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:Ezcurl_core.meth -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/Make/argument-2-C/module-type-IO/index.html b/zarr/Zarr/Http/Make/argument-2-C/module-type-IO/index.html new file mode 100644 index 0000000..1bacdd6 --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/module-type-IO/index.html @@ -0,0 +1,2 @@ + +IO (zarr.Zarr.Http.Make.C.IO)

Module type C.IO

type 'a t
val return : 'a -> 'a t
val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>|=) : 'a t -> ('a -> 'b) -> 'b t
val fail : exn -> 'a t
val perform : Curl.t -> Curl.curlCode t
diff --git a/zarr/Zarr/Http/Make/argument-2-C/module-type-S/index.html b/zarr/Zarr/Http/Make/argument-2-C/module-type-S/index.html new file mode 100644 index 0000000..b6489ba --- /dev/null +++ b/zarr/Zarr/Http/Make/argument-2-C/module-type-S/index.html @@ -0,0 +1,37 @@ + +S (zarr.Zarr.Http.Make.C.S)

Module type C.S

type 'a io
val http : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:meth -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/Make/index.html b/zarr/Zarr/Http/Make/index.html new file mode 100644 index 0000000..b7d1f8f --- /dev/null +++ b/zarr/Zarr/Http/Make/index.html @@ -0,0 +1,8 @@ + +Make (zarr.Zarr.Http.Make)

Module Http.Make

Parameters

module C : C with type 'a io = 'a Deferred.t

Signature

exception Not_implemented
exception Request_failed of int * string
include Storage.STORE with type 'a Deferred.t = 'a Deferred.t
module Deferred : Types.Deferred with type 'a t = 'a Deferred.t
type t

The storage type.

module Group : sig ... end
module Array : sig ... end
val hierarchy : t -> (Node.Array.t list * Node.Group.t list) Deferred.t

hierarchy t returns p where p is a pair of lists representing all nodes in store t. The first element of the pair is a list of all array nodes, and the second element is a list of all group nodes. This operation returns a pair of empty lists if store t is empty.

  • raises Parse_error

    if any node has invalid node_type metadata.

val clear : t -> unit Deferred.t

clear t clears the store t by deleting all nodes. If the store is already empty, this is a no-op.

val with_open : + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a) -> + 'a
diff --git a/zarr/Zarr/Http/index.html b/zarr/Zarr/Http/index.html new file mode 100644 index 0000000..dbbdace --- /dev/null +++ b/zarr/Zarr/Http/index.html @@ -0,0 +1,5 @@ + +Http (zarr.Zarr.Http)

Module Zarr.Http

module type S = sig ... end
module type C = sig ... end
module Make + (Deferred : Types.Deferred) + (C : C with type 'a io = 'a Deferred.t) : + S with type 'a Deferred.t = 'a Deferred.t
diff --git a/zarr/Zarr/Http/module-type-C/Config/index.html b/zarr/Zarr/Http/module-type-C/Config/index.html new file mode 100644 index 0000000..5251c20 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/Config/index.html @@ -0,0 +1,2 @@ + +Config (zarr.Zarr.Http.C.Config)

Module C.Config

type t
val default : t
val verbose : bool -> t -> t
val authmethod : Curl.curlAuth list -> t -> t
val max_redirects : int -> t -> t
val follow_location : bool -> t -> t
val username : string -> t -> t
val password : string -> t -> t
val pp : Stdlib.Format.formatter -> t -> unit
val to_string : t -> string
diff --git a/zarr/Zarr/Http/module-type-C/Make/argument-1-IO/index.html b/zarr/Zarr/Http/module-type-C/Make/argument-1-IO/index.html new file mode 100644 index 0000000..b86bd91 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/Make/argument-1-IO/index.html @@ -0,0 +1,2 @@ + +IO (zarr.Zarr.Http.C.Make.IO)

Parameter Make.IO

type 'a t
val return : 'a -> 'a t
val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>|=) : 'a t -> ('a -> 'b) -> 'b t
val fail : exn -> 'a t
val perform : Curl.t -> Curl.curlCode t
diff --git a/zarr/Zarr/Http/module-type-C/Make/index.html b/zarr/Zarr/Http/module-type-C/Make/index.html new file mode 100644 index 0000000..ec20634 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/Make/index.html @@ -0,0 +1,37 @@ + +Make (zarr.Zarr.Http.C.Make)

Module C.Make

Parameters

module IO : IO

Signature

type 'a io = 'a IO.t
val http : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:meth -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/module-type-C/index.html b/zarr/Zarr/Http/module-type-C/index.html new file mode 100644 index 0000000..bd93ab4 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/index.html @@ -0,0 +1,37 @@ + +C (zarr.Zarr.Http.C)

Module type Http.C

include module type of Ezcurl_core
module Config : sig ... end
type t = Curl.t
val make : ?set_opts:(t -> unit) -> unit -> t
val delete : t -> unit
val with_client : ?set_opts:(t -> unit) -> (t -> 'a) -> 'a
type response_info = {
  1. ri_response_time : float;
  2. ri_redirect_count : int;
}
val pp_response_info : Stdlib.Format.formatter -> response_info -> unit
val string_of_response_info : response_info -> string
type response = {
  1. code : int;
  2. headers : (string * string) list;
  3. body : string;
  4. info : response_info;
}
val pp_response : Stdlib.Format.formatter -> response -> unit
val string_of_response : response -> string
type meth =
  1. | GET
  2. | POST of Curl.curlHTTPPost list
  3. | PUT
  4. | DELETE
  5. | HEAD
  6. | CONNECT
  7. | OPTIONS
  8. | TRACE
  9. | PATCH
val pp_meth : Stdlib.Format.formatter -> meth -> unit
val string_of_meth : meth -> string
module type IO = sig ... end
module type S = sig ... end
module Make (IO : IO) : sig ... end
include Ezcurl_core.S
type 'a io
val http : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:Ezcurl_core.meth -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:Ezcurl_core.t -> + ?config:Ezcurl_core.Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (Ezcurl_core.response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/module-type-C/module-type-IO/index.html b/zarr/Zarr/Http/module-type-C/module-type-IO/index.html new file mode 100644 index 0000000..10389e8 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/module-type-IO/index.html @@ -0,0 +1,2 @@ + +IO (zarr.Zarr.Http.C.IO)

Module type C.IO

type 'a t
val return : 'a -> 'a t
val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>|=) : 'a t -> ('a -> 'b) -> 'b t
val fail : exn -> 'a t
val perform : Curl.t -> Curl.curlCode t
diff --git a/zarr/Zarr/Http/module-type-C/module-type-S/index.html b/zarr/Zarr/Http/module-type-C/module-type-S/index.html new file mode 100644 index 0000000..f88b290 --- /dev/null +++ b/zarr/Zarr/Http/module-type-C/module-type-S/index.html @@ -0,0 +1,37 @@ + +S (zarr.Zarr.Http.C.S)

Module type C.S

type 'a io
val http : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + ?headers:(string * string) list -> + url:string -> + meth:meth -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val get : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?range:string -> + ?headers:(string * string) list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val put : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + url:string -> + content:[ `String of string | `Write of bytes -> int -> int ] -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
val post : + ?tries:int -> + ?client:t -> + ?config:Config.t -> + ?headers:(string * string) list -> + ?content:[ `String of string | `Write of bytes -> int -> int ] -> + params:Curl.curlHTTPPost list -> + url:string -> + unit -> + (response, Curl.curlCode * string) Stdlib.result io
diff --git a/zarr/Zarr/Http/module-type-S/Array/index.html b/zarr/Zarr/Http/module-type-S/Array/index.html new file mode 100644 index 0000000..b7709f3 --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/Array/index.html @@ -0,0 +1,23 @@ + +Array (zarr.Zarr.Http.S.Array)

Module S.Array

val create : + ?sep:[< `Dot | `Slash Slash ] -> + ?dimension_names:string option list -> + ?attributes:Yojson.Safe.t -> + codecs:Codecs.codec_chain -> + shape:int array -> + chunks:int array -> + 'a Ndarray.dtype -> + 'a -> + Node.Array.t -> + t -> + unit Deferred.t

create ~sep ~dimension_names ~attributes ~codecs ~shape ~chunks kind fill node t creates an array node in store t where:

  • Separator sep is used in the array's chunk key encoding.
  • Dimension names dimension_names and user attributes attributes are included in it's metadata document.
  • A codec chain defined by codecs.
  • The array has shape shape and chunk shape chunks.
  • The array has data kind kind and fill value fv.
  • raises Codecs.Bytes_to_bytes_invariant

    if codecs contains more than one bytes->bytes codec.

metadata node t returns the metadata of array node node.

  • raises Key_not_found

    if node is not a member of store t.

val delete : t -> Node.Array.t -> unit Deferred.t

delete t n erases array node n from store t. If node n is not a member of store t then this is a no-op.

val exists : t -> Node.Array.t -> bool Deferred.t

exists t n returns true if array node n is a member of store t and false otherwise.

val write : + t -> + Node.Array.t -> + Ndarray.Indexing.index array -> + 'a Ndarray.t -> + unit Deferred.t

write t n s x writes n-dimensional array x to the slice s of array node n in store t.

  • raises Invalid_array_slice

    if the ndarray x size does not equal slice s.

  • raises Invalid_data_type

    if the kind of x is not compatible with node n's data type as described in its metadata document.

val read : + t -> + Node.Array.t -> + Ndarray.Indexing.index array -> + 'a Ndarray.dtype -> + 'a Ndarray.t Deferred.t

read t n s k reads an n-dimensional array of size determined by slice s from array node n.

  • raises Invalid_data_type

    if kind k is not compatible with node n's data type as described in its metadata document.

  • raises Invalid_array_slice

    if the slice s is not a valid slice of array node n.

val reshape : t -> Node.Array.t -> int array -> unit Deferred.t

reshape t n shape resizes array node n of store t into new size shape. Note that when the resizing involves shrinking an array along any dimensions, any old unreachable chunks that fall outside of the array's new shape are deleted from the store.

  • raises Invalid_resize_shape

    if shape does not have the same dimensions as n's shape.

  • raises Key_not_found

    if node n is not a member of store t.

val rename : t -> Node.Array.t -> string -> unit Deferred.t

rename t n name changes the name of array node n in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr/Zarr/Http/module-type-S/Deferred/Infix/index.html b/zarr/Zarr/Http/module-type-S/Deferred/Infix/index.html new file mode 100644 index 0000000..d4caca1 --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/Deferred/Infix/index.html @@ -0,0 +1,2 @@ + +Infix (zarr.Zarr.Http.S.Deferred.Infix)

Module Deferred.Infix

val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>>|) : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/module-type-S/Deferred/Syntax/index.html b/zarr/Zarr/Http/module-type-S/Deferred/Syntax/index.html new file mode 100644 index 0000000..5a638bf --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/Deferred/Syntax/index.html @@ -0,0 +1,2 @@ + +Syntax (zarr.Zarr.Http.S.Deferred.Syntax)

Module Deferred.Syntax

val let* : 'a t -> ('a -> 'b t) -> 'b t
val let+ : 'a t -> ('a -> 'b) -> 'b t
diff --git a/zarr/Zarr/Http/module-type-S/Deferred/index.html b/zarr/Zarr/Http/module-type-S/Deferred/index.html new file mode 100644 index 0000000..71edd8a --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/Deferred/index.html @@ -0,0 +1,2 @@ + +Deferred (zarr.Zarr.Http.S.Deferred)

Module S.Deferred

type 'a t
val return : 'a -> 'a t
val return_unit : unit t
val iter : ('a -> unit t) -> 'a list -> unit t
val fold_left : ('acc -> 'a -> 'acc t) -> 'acc -> 'a list -> 'acc t
val concat_map : ('a -> 'b list t) -> 'a list -> 'b list t
module Infix : sig ... end
module Syntax : sig ... end
diff --git a/zarr/Zarr/Http/module-type-S/Group/index.html b/zarr/Zarr/Http/module-type-S/Group/index.html new file mode 100644 index 0000000..f8dfb45 --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/Group/index.html @@ -0,0 +1,5 @@ + +Group (zarr.Zarr.Http.S.Group)

Module S.Group

val create : ?attrs:Yojson.Safe.t -> t -> Node.Group.t -> unit Deferred.t

create ?attrs t node creates a group node in store t containing attributes attrs. This is a no-op if node is already a member of this store.

metadata node t returns the metadata of group node node.

  • raises Key_not_found

    if node is not a member of store t.

val children : + t -> + Node.Group.t -> + (Node.Array.t list * Node.Group.t list) Deferred.t

children t n returns a tuple of child nodes of group node n. This operation returns a pair of empty lists if node n has no children or is not a member of store t.

  • raises Parse_error

    if any child node has invalid node_type metadata.

val delete : t -> Node.Group.t -> unit Deferred.t

delete t n erases group node n from store t. This also erases all child nodes of n. If node n is not a member of store t then this is a no-op.

val exists : t -> Node.Group.t -> bool Deferred.t

exists t n returns true if group node n is a member of store t and false otherwise.

val rename : t -> Node.Group.t -> string -> unit Deferred.t

rename t g name changes the name of group node g in store t to name.

  • raises Key_not_found

    if g is not a member of store t.

  • raises Renaming_root

    if g is the store's root node.

  • raises Node_invariant

    if name is an invalid node name.

diff --git a/zarr/Zarr/Http/module-type-S/index.html b/zarr/Zarr/Http/module-type-S/index.html new file mode 100644 index 0000000..59410ed --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/index.html @@ -0,0 +1,8 @@ + +S (zarr.Zarr.Http.S)

Module type Http.S

exception Not_implemented
exception Request_failed of int * string
include Storage.STORE
type t

The storage type.

module Group : sig ... end
module Array : sig ... end
val hierarchy : t -> (Node.Array.t list * Node.Group.t list) Deferred.t

hierarchy t returns p where p is a pair of lists representing all nodes in store t. The first element of the pair is a list of all array nodes, and the second element is a list of all group nodes. This operation returns a pair of empty lists if store t is empty.

  • raises Parse_error

    if any node has invalid node_type metadata.

val clear : t -> unit Deferred.t

clear t clears the store t by deleting all nodes. If the store is already empty, this is a no-op.

val with_open : + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a) -> + 'a
diff --git a/zarr/Zarr/index.html b/zarr/Zarr/index.html index b10b2b4..0656719 100644 --- a/zarr/Zarr/index.html +++ b/zarr/Zarr/index.html @@ -1,5 +1,5 @@ -Zarr (zarr.Zarr)

Module Zarr

zarr Provides an Ocaml implementation of the Zarr version 3 storage format specification. It supports creation of arrays and groups as well as chunking arrays along any dimension. One can store a Zarr hierarchy in memory or on disk. Zarr also supports reading zarr hierarchies created using other implementations, as long as they are spec-compliant.

Consult the examples and limitations for more info.

References

Node

module Node : sig ... end

This module provides functionality for manipulating Zarr nodes.

Metadata

module Metadata : sig ... end

This module provides functionality for manipulating a Zarr node's metadata JSON document.

Storage

module Storage : sig ... end
module Memory : sig ... end
module Zip : sig ... end
module Types : sig ... end

Codecs

module Codecs : sig ... end

An array has an associated list of codecs. Each codec specifies a bidirectional transform (an encode transform and a decode transform). This module contains building blocks for creating and working with a chain of codecs.

Indexing

module Indexing = Ndarray.Indexing

Utils

module Util : sig ... end

Ndarray

module Ndarray : sig ... end

Examples

Create, read & write array.

Here we show how the library's asynchronous API using Lwt's concurrency monad can be used.

open Zarr
+Zarr (zarr.Zarr)

Module Zarr

zarr Provides an Ocaml implementation of the Zarr version 3 storage format specification. It supports creation of arrays and groups as well as chunking arrays along any dimension. One can store a Zarr hierarchy in memory or on disk. Zarr also supports reading zarr hierarchies created using other implementations, as long as they are spec-compliant.

Consult the examples and limitations for more info.

References

Node

module Node : sig ... end

This module provides functionality for manipulating Zarr nodes.

Metadata

module Metadata : sig ... end

This module provides functionality for manipulating a Zarr node's metadata JSON document.

Storage

module Storage : sig ... end
module Memory : sig ... end
module Zip : sig ... end
module Http : sig ... end
module Types : sig ... end

Codecs

module Codecs : sig ... end

An array has an associated list of codecs. Each codec specifies a bidirectional transform (an encode transform and a decode transform). This module contains building blocks for creating and working with a chain of codecs.

Indexing

module Indexing = Ndarray.Indexing

Utils

module Util : sig ... end

Ndarray

module Ndarray : sig ... end

Examples

Create, read & write array.

Here we show how the library's asynchronous API using Lwt's concurrency monad can be used.

open Zarr
 open Zarr.Ndarray
 open Zarr.Indexing
 open Zarr.Codecs