nixpkgs/pkgs/development/ocaml-modules/iter/default.nix
2022-11-19 07:16:24 +01:00

35 lines
1,012 B
Nix

{ lib, fetchFromGitHub, buildDunePackage, ocaml, dune-configurator
, result, seq
, mdx, ounit2, qcheck-core
}:
buildDunePackage rec {
pname = "iter";
version = "1.6";
src = fetchFromGitHub {
owner = "c-cube";
repo = pname;
rev = "v${version}";
sha256 = "sha256-FbM/Vk/h4wkrBjyf9/QXTvTOA0nNqsdHP1mDnVkg1is=";
};
buildInputs = [ dune-configurator ];
propagatedBuildInputs = [ result seq ];
doCheck = lib.versionAtLeast ocaml.version "4.08";
checkInputs = [ mdx.bin ounit2 qcheck-core ];
meta = {
homepage = "https://github.com/c-cube/sequence";
description = "Simple sequence (iterator) datatype and combinators";
longDescription = ''
Simple sequence datatype, intended to transfer a finite number of
elements from one data structure to another. Some transformations on sequences,
like `filter`, `map`, `take`, `drop` and `append` can be performed before the
sequence is iterated/folded on.
'';
license = lib.licenses.bsd2;
};
}