Module Object.Versions

Pagination helpers for ListObjectVersions.

type 'acc fold_step =
  1. | Continue of 'acc
  2. | Stop of 'acc
    (*

    Decision returned by fold_pages_until. Stop returns the accumulator without fetching another page.

    *)
val fold_pages : t -> bucket:Awskit_s3.Bucket_name.t -> ?options:Awskit_s3.Object.Versions.options -> ?max_pages:int -> init:'acc -> f: ('acc -> Awskit_s3.Object.Versions.page -> ('acc, Awskit.Error.t) Stdlib.result) -> unit -> ('acc, Awskit.Error.t) Stdlib.result

Follow key/version markers and fold pages until S3 stops returning next markers or max_pages is reached.

val fold_pages_until : t -> bucket:Awskit_s3.Bucket_name.t -> ?options:Awskit_s3.Object.Versions.options -> ?max_pages:int -> init:'acc -> f: ('acc -> Awskit_s3.Object.Versions.page -> ('acc fold_step, Awskit.Error.t) Stdlib.result) -> unit -> ('acc, Awskit.Error.t) Stdlib.result

Follow key/version markers and fold pages until S3 stops returning next markers, max_pages is reached, or f returns Stop.

val pages : t -> bucket:Awskit_s3.Bucket_name.t -> ?options:Awskit_s3.Object.Versions.options -> max_pages:int -> unit -> (Awskit_s3.Object.Versions.page list, Awskit.Error.t) Stdlib.result

Collect version listing pages up to the explicit max_pages bound.

Returns an error if S3 reports more pages than the bound allows.

val object_versions : t -> bucket:Awskit_s3.Bucket_name.t -> ?options:Awskit_s3.Object.Versions.options -> max_pages:int -> unit -> (Awskit_s3.Object.Versions.object_version list, Awskit.Error.t) Stdlib.result

Collect object-version entries across pages up to max_pages.

val delete_markers : t -> bucket:Awskit_s3.Bucket_name.t -> ?options:Awskit_s3.Object.Versions.options -> max_pages:int -> unit -> (Awskit_s3.Object.Versions.delete_marker list, Awskit.Error.t) Stdlib.result

Collect delete-marker entries across pages up to max_pages.