mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 11:15:31 -05:00
prepare for 3.7
This commit is contained in:
parent
7f4c87cfb9
commit
a2a1901630
10 changed files with 30 additions and 11 deletions
19
CHANGELOG.md
19
CHANGELOG.md
|
|
@ -1,5 +1,24 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 3.7
|
||||||
|
|
||||||
|
- add `Format.styling`
|
||||||
|
- make `Format` compatible with OCaml 5.0, using Stag for colors
|
||||||
|
- new preprocessor, compatible with merlin, using `[@@@ifge 4.12]`-style pragmas
|
||||||
|
- feat: add `Byte_buf`, a byte buffer.
|
||||||
|
- add `CCSeq.{zip_i,of_string}`
|
||||||
|
- add `CCResult.opt_map` to simplify result function application over optionals (#397)
|
||||||
|
- add shims for Atomic and Unit
|
||||||
|
- expose `CCParse.pos` to get current pos; improve perf
|
||||||
|
- add `CCVector.resize_with` and `CCVector.resize_with_init`, tests and doc (#389)
|
||||||
|
- add `CCVector.insert`
|
||||||
|
- update dune to 1.10, condition some rules to unix
|
||||||
|
|
||||||
|
- perf: reduce allocations in `CCSeq.to_array`
|
||||||
|
|
||||||
|
- fix asymptotic behavior of resize functions in `CCVector`
|
||||||
|
- fix: rely on `either` compatibility library
|
||||||
|
|
||||||
## 3.6.1
|
## 3.6.1
|
||||||
|
|
||||||
- use `either` compatibility library instead of shims
|
- use `either` compatibility library instead of shims
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
opam-version: "2.0"
|
opam-version: "2.0"
|
||||||
version: "3.6.1"
|
version: "3.7"
|
||||||
author: "Simon Cruanes"
|
author: "Simon Cruanes"
|
||||||
maintainer: "simon.cruanes.2007@m4x.org"
|
maintainer: "simon.cruanes.2007@m4x.org"
|
||||||
synopsis: "A set of advanced datatypes for containers"
|
synopsis: "A set of advanced datatypes for containers"
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
opam-version: "2.0"
|
opam-version: "2.0"
|
||||||
version: "3.6.1"
|
version: "3.7"
|
||||||
author: "Simon Cruanes"
|
author: "Simon Cruanes"
|
||||||
maintainer: "simon.cruanes.2007@m4x.org"
|
maintainer: "simon.cruanes.2007@m4x.org"
|
||||||
license: "BSD-2-Clause"
|
license: "BSD-2-Clause"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
opam-version: "2.0"
|
opam-version: "2.0"
|
||||||
name: "containers"
|
name: "containers"
|
||||||
version: "3.6.1"
|
version: "3.7"
|
||||||
author: "Simon Cruanes"
|
author: "Simon Cruanes"
|
||||||
maintainer: "simon.cruanes.2007@m4x.org"
|
maintainer: "simon.cruanes.2007@m4x.org"
|
||||||
license: "BSD-2-Clause"
|
license: "BSD-2-Clause"
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
(** Byte buffer.
|
(** Byte buffer.
|
||||||
|
|
||||||
A dynamic vector of bytes.
|
A dynamic vector of bytes.
|
||||||
@since NEXT_RELEASE
|
@since 3.7
|
||||||
*)
|
*)
|
||||||
|
|
||||||
type t
|
type t
|
||||||
|
|
|
||||||
|
|
@ -343,7 +343,7 @@ val styling : ANSI_codes.style list -> 'a printer -> 'a printer
|
||||||
]}
|
]}
|
||||||
|
|
||||||
Available only on OCaml >= 4.08.
|
Available only on OCaml >= 4.08.
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
val with_styling : ANSI_codes.style list -> t -> (unit -> 'a) -> 'a
|
val with_styling : ANSI_codes.style list -> t -> (unit -> 'a) -> 'a
|
||||||
(** [with_styling style fmt f] sets the given style on [fmt],
|
(** [with_styling style fmt f] sets the given style on [fmt],
|
||||||
|
|
@ -351,7 +351,7 @@ val with_styling : ANSI_codes.style list -> t -> (unit -> 'a) -> 'a
|
||||||
It is useful in imperative-style printers (a sequence of "print a; print b; …").
|
It is useful in imperative-style printers (a sequence of "print a; print b; …").
|
||||||
|
|
||||||
Available only on OCaml >= 4.08.
|
Available only on OCaml >= 4.08.
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
[@@@endif]
|
[@@@endif]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -182,7 +182,7 @@ val pos : position t
|
||||||
(** [pos] returns the current position in the buffer.
|
(** [pos] returns the current position in the buffer.
|
||||||
|
|
||||||
{b EXPERIMENTAL}
|
{b EXPERIMENTAL}
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
val with_pos : 'a t -> ('a * position) t
|
val with_pos : 'a t -> ('a * position) t
|
||||||
(** [with_pos p] behaves like [p], but returns the (starting) position
|
(** [with_pos p] behaves like [p], but returns the (starting) position
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ val add_ctxf : ('a, Format.formatter, unit, ('b, string) t -> ('b, string) t) fo
|
||||||
|
|
||||||
val opt_map : ('a -> ('b, 'c) t) -> 'a option -> ('b option, 'c) t
|
val opt_map : ('a -> ('b, 'c) t) -> 'a option -> ('b option, 'c) t
|
||||||
(** Map a fallible operation through an option.
|
(** Map a fallible operation through an option.
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
val map : ('a -> 'b) -> ('a, 'err) t -> ('b, 'err) t
|
val map : ('a -> 'b) -> ('a, 'err) t -> ('b, 'err) t
|
||||||
(** Map on success. *)
|
(** Map on success. *)
|
||||||
|
|
|
||||||
|
|
@ -261,7 +261,7 @@ val of_gen : 'a gen -> 'a t
|
||||||
|
|
||||||
val of_string : string -> char t
|
val of_string : string -> char t
|
||||||
(** Iterate on characters.
|
(** Iterate on characters.
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
(** {2 IO} *)
|
(** {2 IO} *)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ val resize_with : ('a, rw) t -> (int -> 'a) -> int -> unit
|
||||||
to [length vec].
|
to [length vec].
|
||||||
@raise Invalid_argument if the size is too big
|
@raise Invalid_argument if the size is too big
|
||||||
|
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
val resize_with_init : ('a, rw) t -> init:'a -> int -> unit
|
val resize_with_init : ('a, rw) t -> init:'a -> int -> unit
|
||||||
(** [resize_with_init vec init size] resizes vector [vec] up to [size],
|
(** [resize_with_init vec init size] resizes vector [vec] up to [size],
|
||||||
|
|
@ -98,7 +98,7 @@ val resize_with_init : ('a, rw) t -> init:'a -> int -> unit
|
||||||
to [length vec].
|
to [length vec].
|
||||||
@raise Invalid_argument if the size is too big
|
@raise Invalid_argument if the size is too big
|
||||||
|
|
||||||
@since NEXT_RELEASE *)
|
@since 3.7 *)
|
||||||
|
|
||||||
val append : ('a, rw) t -> ('a, _) t -> unit
|
val append : ('a, rw) t -> ('a, _) t -> unit
|
||||||
(** [append a b] adds all elements of b to a. *)
|
(** [append a b] adds all elements of b to a. *)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue