🍺 BREW Explorer

← all formulae

cpp-lazy

brew install cpp-lazy v9.0.1 MIT

C++11 (and onwards) library for lazy evaluation

4
30-day installs · #11344
4
90-day · #16200
44
365-day · #11440
365
★ GitHub stars · updated 6mo ago

Runtime dependencies

fmt

Build dependencies

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "cmake"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "fmt"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "C++11 (and onwards) library for lazy evaluation",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:36:38+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "cpp-lazy",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-02-07T14:39:53Z",
  "github_readme_excerpt": "[![Build status](https://github.com/Kaaserne/cpp-lazy/workflows/Continuous%20Integration/badge.svg)](https://github.com/Kaaserne/cpp-lazy/actions)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n[![CodeQL](https://github.com/Kaaserne/cpp-lazy/actions/workflows/codeql.yml/badge.svg)](https://github.com/Kaaserne/cpp-lazy/actions/workflows/codeql.yml)\r\n\r\n![](https://i.ibb.co/ccn2V8N/Screenshot-2021-05-05-Make-A-High-Quality-Logo-In-Just-5-Minutes-For-Under-30-v1-cropped.png)\r\n\r\nExamples can be found [here](https://github.com/Kaaserne/cpp-lazy/tree/master/examples). Installation can be found [here](https://github.com/Kaaserne/cpp-lazy#installation).\r\n\r\n# cpp-lazy\r\n`cpp-lazy` is an easy and fast lazy evaluation library for C++11/14/17/20. The library tries to reduce redundant data usage for begin/end iterator pairs. For instance: `lz::random_iterable::end()` will return a `lz::default_sentinel_t` to prevent duplicate data that is also present in `lz::random_iterable::begin()`. If a \u0027symmetrical\u0027 end-begin iterator pair is needed, one can use `lz::common` or `lz::common_random`. Generally, `lz` *forward* iterators will return a `lz::default_sentinel_t` (or if the input iterable is sentinelled) because forward iterators can only go forward, so there is no need to store the end iterator, is the philosophy. Lz random access iterators can also return a `default_sentinel` if the internal data of `begin` can already decide whether end is reached, such as `lz::repeat`.\r\n\r\nThe library uses one optional dependency: the library `{fmt}`, more of which can be found out in the [installation section](https://github.com/Kaaserne/cpp-lazy#Installation). This dependency is only used for printing and formatting.\r\n\r\n# Features\r\n- C++11/14/17/20 compatible\r\n- C++20\u0027s module compatible\r\n- `pkgconfig` compatible\r\n- Easy printing/formatting using `lz::format`, `fmt::print` or `std::cout`\r\n- One optional dependency ([`{fmt}`](https://",
  "github_repo": "Kaaserne/cpp-lazy",
  "github_stars": 365,
  "github_topics": [],
  "homepage": "https://github.com/Kaaserne/cpp-lazy",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 4,
  "installs_365d": 44,
  "installs_90d": 4,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "cpp-lazy",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 11344,
  "rank_365d": 11440,
  "rank_90d": 16200,
  "raw_hash": "4899d6169f8487bf",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/c/cpp-lazy.rb",
  "tap": "homebrew/core",
  "test_dependencies": [
    "pkgconf"
  ],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "9.0.1",
  "versioned_formulae": [],
  "why_use_this": null
}