38 lines
1 KiB
Nix
38 lines
1 KiB
Nix
{ lib, fetchFromGitHub, buildDunePackage, ocaml, dune-configurator
|
|
, result, seq
|
|
, mdx, ounit2, qcheck-core
|
|
}:
|
|
|
|
buildDunePackage rec {
|
|
pname = "iter";
|
|
version = "1.6";
|
|
|
|
duneVersion = "3";
|
|
|
|
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";
|
|
nativeCheckInputs = [ mdx.bin ];
|
|
checkInputs = [ 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;
|
|
};
|
|
}
|