From 8e39869be9b3c601793cf1bb4f6d203292403744 Mon Sep 17 00:00:00 2001 From: zoj613 Date: Mon, 23 Dec 2024 16:44:30 +0000 Subject: [PATCH] deploy: 0463b8f3b4da7b030cb112c874b1b11bc1d9cd54 --- .../Storage/HttpStore/Array/index.html | 23 ++++++++++++ .../Storage/HttpStore/Group/index.html | 5 +++ .../Zarr_eio/Storage/HttpStore/index.html | 12 ++++++ zarr-eio/Zarr_eio/Storage/index.html | 2 +- .../Storage/HttpStore/Array/index.html | 23 ++++++++++++ .../Storage/HttpStore/Group/index.html | 5 +++ .../Zarr_lwt/Storage/HttpStore/index.html | 11 ++++++ zarr-lwt/Zarr_lwt/Storage/index.html | 2 +- .../Storage/HttpStore/Array/index.html | 23 ++++++++++++ .../Storage/HttpStore/Group/index.html | 5 +++ .../Zarr_sync/Storage/HttpStore/index.html | 11 ++++++ zarr-sync/Zarr_sync/Storage/index.html | 2 +- zarr/Zarr/Http/Make/Array/index.html | 23 ++++++++++++ zarr/Zarr/Http/Make/Group/index.html | 5 +++ .../Make/argument-1-Deferred/Infix/index.html | 2 + .../argument-1-Deferred/Syntax/index.html | 2 + .../Http/Make/argument-1-Deferred/index.html | 2 + .../Http/Make/argument-2-C/Config/index.html | 2 + .../Make/argument-1-IO/index.html | 2 + .../Http/Make/argument-2-C/Make/index.html | 37 +++++++++++++++++++ zarr/Zarr/Http/Make/argument-2-C/index.html | 37 +++++++++++++++++++ .../argument-2-C/module-type-IO/index.html | 2 + .../argument-2-C/module-type-S/index.html | 37 +++++++++++++++++++ zarr/Zarr/Http/Make/index.html | 9 +++++ zarr/Zarr/Http/index.html | 5 +++ .../Zarr/Http/module-type-C/Config/index.html | 2 + .../Make/argument-1-IO/index.html | 2 + zarr/Zarr/Http/module-type-C/Make/index.html | 37 +++++++++++++++++++ zarr/Zarr/Http/module-type-C/index.html | 37 +++++++++++++++++++ .../module-type-C/module-type-IO/index.html | 2 + .../module-type-C/module-type-S/index.html | 37 +++++++++++++++++++ zarr/Zarr/Http/module-type-S/Array/index.html | 23 ++++++++++++ .../module-type-S/Deferred/Infix/index.html | 2 + .../module-type-S/Deferred/Syntax/index.html | 2 + .../Http/module-type-S/Deferred/index.html | 2 + zarr/Zarr/Http/module-type-S/Group/index.html | 5 +++ zarr/Zarr/Http/module-type-S/index.html | 9 +++++ zarr/Zarr/index.html | 2 +- 38 files changed, 447 insertions(+), 4 deletions(-) create mode 100644 zarr-eio/Zarr_eio/Storage/HttpStore/Array/index.html create mode 100644 zarr-eio/Zarr_eio/Storage/HttpStore/Group/index.html create mode 100644 zarr-eio/Zarr_eio/Storage/HttpStore/index.html create mode 100644 zarr-lwt/Zarr_lwt/Storage/HttpStore/Array/index.html create mode 100644 zarr-lwt/Zarr_lwt/Storage/HttpStore/Group/index.html create mode 100644 zarr-lwt/Zarr_lwt/Storage/HttpStore/index.html create mode 100644 zarr-sync/Zarr_sync/Storage/HttpStore/Array/index.html create mode 100644 zarr-sync/Zarr_sync/Storage/HttpStore/Group/index.html create mode 100644 zarr-sync/Zarr_sync/Storage/HttpStore/index.html create mode 100644 zarr/Zarr/Http/Make/Array/index.html create mode 100644 zarr/Zarr/Http/Make/Group/index.html create mode 100644 zarr/Zarr/Http/Make/argument-1-Deferred/Infix/index.html create mode 100644 zarr/Zarr/Http/Make/argument-1-Deferred/Syntax/index.html create mode 100644 zarr/Zarr/Http/Make/argument-1-Deferred/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/Config/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/Make/argument-1-IO/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/Make/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/module-type-IO/index.html create mode 100644 zarr/Zarr/Http/Make/argument-2-C/module-type-S/index.html create mode 100644 zarr/Zarr/Http/Make/index.html create mode 100644 zarr/Zarr/Http/index.html create mode 100644 zarr/Zarr/Http/module-type-C/Config/index.html create mode 100644 zarr/Zarr/Http/module-type-C/Make/argument-1-IO/index.html create mode 100644 zarr/Zarr/Http/module-type-C/Make/index.html create mode 100644 zarr/Zarr/Http/module-type-C/index.html create mode 100644 zarr/Zarr/Http/module-type-C/module-type-IO/index.html create mode 100644 zarr/Zarr/Http/module-type-C/module-type-S/index.html create mode 100644 zarr/Zarr/Http/module-type-S/Array/index.html create mode 100644 zarr/Zarr/Http/module-type-S/Deferred/Infix/index.html create mode 100644 zarr/Zarr/Http/module-type-S/Deferred/Syntax/index.html create mode 100644 zarr/Zarr/Http/module-type-S/Deferred/index.html create mode 100644 zarr/Zarr/Http/module-type-S/Group/index.html create mode 100644 zarr/Zarr/Http/module-type-S/index.html 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..6d77223 --- /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 list -> + 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..8425fe7 --- /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..885d7e2 --- /dev/null +++ b/zarr-eio/Zarr_eio/Storage/HttpStore/index.html @@ -0,0 +1,12 @@ + +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 : + ?https: + (Uri.t -> + [ `Generic ] Eio.Net.stream_socket_ty Eio.Std.r -> + _ Eio.Flow.two_way) -> + 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 7751b43..67bd080 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..fc27fe6 --- /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 list -> + 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..530c9c6 --- /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..67ba42a --- /dev/null +++ b/zarr-lwt/Zarr_lwt/Storage/HttpStore/index.html @@ -0,0 +1,11 @@ + +HttpStore (zarr-lwt.Zarr_lwt.Storage.HttpStore)

Module Storage.HttpStore

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

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.

type auth = {
  1. user : string;
  2. pwd : string;
}
val with_open : + ?basic_auth:auth -> + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a Deferred.t) -> + 'a Deferred.t

with_open url f connects to the Zarr store described by the url url and applies function f to the store's open handle.

  • basic_auth is the username and password to use for each request if required by the server.
  • redirects is the maximum number of redirects allowed per http request. Defaults to 5.
  • tries is the maximum number of times to retry a failed request. Defaults to 3.
  • timeout is the timeout for the connect phase. It sets the maximum time in seconds that you allow the connection phase to take. This timeout only limits the connection phase, it has no impact once the client has connected. The connection phase includes the name resolve (DNS) and all protocol handshakes and negotiations until there is an established connection with the remote side.
diff --git a/zarr-lwt/Zarr_lwt/Storage/index.html b/zarr-lwt/Zarr_lwt/Storage/index.html index b63435d..f2e2969 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 HttpStore : Zarr.Http.S with module Deferred = Deferred

An Lwt-aware Http 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.

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..58147c0 --- /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 list -> + 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..c0ec014 --- /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..b74967d --- /dev/null +++ b/zarr-sync/Zarr_sync/Storage/HttpStore/index.html @@ -0,0 +1,11 @@ + +HttpStore (zarr-sync.Zarr_sync.Storage.HttpStore)

Module Storage.HttpStore

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

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.

type auth = {
  1. user : string;
  2. pwd : string;
}
val with_open : + ?basic_auth:auth -> + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a Deferred.t) -> + 'a Deferred.t

with_open url f connects to the Zarr store described by the url url and applies function f to the store's open handle.

  • basic_auth is the username and password to use for each request if required by the server.
  • redirects is the maximum number of redirects allowed per http request. Defaults to 5.
  • tries is the maximum number of times to retry a failed request. Defaults to 3.
  • timeout is the timeout for the connect phase. It sets the maximum time in seconds that you allow the connection phase to take. This timeout only limits the connection phase, it has no impact once the client has connected. The connection phase includes the name resolve (DNS) and all protocol handshakes and negotiations until there is an established connection with the remote side.
diff --git a/zarr-sync/Zarr_sync/Storage/index.html b/zarr-sync/Zarr_sync/Storage/index.html index 3f2fbb2..bb34473 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 HttpStore : Zarr.Http.S with module Deferred = Deferred

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

module FilesystemStore : sig ... end

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

diff --git a/zarr/Zarr/Http/Make/Array/index.html b/zarr/Zarr/Http/Make/Array/index.html new file mode 100644 index 0000000..d925cdf --- /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 list -> + 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/Group/index.html b/zarr/Zarr/Http/Make/Group/index.html new file mode 100644 index 0000000..5609a98 --- /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..6d57af2 --- /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..65341d7 --- /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..7fdf299 --- /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 bind : 'a t -> ('a -> 'b t) -> 'b t
val map : ('a -> 'b) -> 'a t -> 'b 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..bd5ca18 --- /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..6b328fb --- /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..a2c7d9f --- /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..65de83e --- /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..d7dc5c3 --- /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..098de94 --- /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..dc7e27a --- /dev/null +++ b/zarr/Zarr/Http/Make/index.html @@ -0,0 +1,9 @@ + +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 module Deferred = Deferred
module Deferred = Deferred
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.

type auth = {
  1. user : string;
  2. pwd : string;
}
val with_open : + ?basic_auth:auth -> + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a Deferred.t) -> + 'a Deferred.t

with_open url f connects to the Zarr store described by the url url and applies function f to the store's open handle.

  • basic_auth is the username and password to use for each request if required by the server.
  • redirects is the maximum number of redirects allowed per http request. Defaults to 5.
  • tries is the maximum number of times to retry a failed request. Defaults to 3.
  • timeout is the timeout for the connect phase. It sets the maximum time in seconds that you allow the connection phase to take. This timeout only limits the connection phase, it has no impact once the client has connected. The connection phase includes the name resolve (DNS) and all protocol handshakes and negotiations until there is an established connection with the remote side.
diff --git a/zarr/Zarr/Http/index.html b/zarr/Zarr/Http/index.html new file mode 100644 index 0000000..5219f87 --- /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 module Deferred = Deferred
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..bce73a1 --- /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..33ca4f4 --- /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..26d60fe --- /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..cf60b6a --- /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..5c9c534 --- /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..5f31b0e --- /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..1c2d0ac --- /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 list -> + 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..0bfedbe --- /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..22fcf67 --- /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..7c9c9ba --- /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 bind : 'a t -> ('a -> 'b t) -> 'b t
val map : ('a -> 'b) -> 'a t -> 'b 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..00e9a34 --- /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..40f7225 --- /dev/null +++ b/zarr/Zarr/Http/module-type-S/index.html @@ -0,0 +1,9 @@ + +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.

type auth = {
  1. user : string;
  2. pwd : string;
}
val with_open : + ?basic_auth:auth -> + ?redirects:int -> + ?tries:int -> + ?timeout:int -> + string -> + (t -> 'a Deferred.t) -> + 'a Deferred.t

with_open url f connects to the Zarr store described by the url url and applies function f to the store's open handle.

  • basic_auth is the username and password to use for each request if required by the server.
  • redirects is the maximum number of redirects allowed per http request. Defaults to 5.
  • tries is the maximum number of times to retry a failed request. Defaults to 3.
  • timeout is the timeout for the connect phase. It sets the maximum time in seconds that you allow the connection phase to take. This timeout only limits the connection phase, it has no impact once the client has connected. The connection phase includes the name resolve (DNS) and all protocol handshakes and negotiations until there is an established connection with the remote side.
diff --git a/zarr/Zarr/index.html b/zarr/Zarr/index.html index e2779e1..1a70258 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