_            _    _        _         _
      /\ \         /\ \ /\ \     /\_\      / /\
      \_\ \       /  \ \\ \ \   / / /     / /  \
      /\__ \     / /\ \ \\ \ \_/ / /     / / /\ \__
     / /_ \ \   / / /\ \ \\ \___/ /     / / /\ \___\
    / / /\ \ \ / / /  \ \_\\ \ \_/      \ \ \ \/___/
   / / /  \/_// / /   / / / \ \ \        \ \ \
  / / /      / / /   / / /   \ \ \   _    \ \ \
 / / /      / / /___/ / /     \ \ \ /_/\__/ / /
/_/ /      / / /____\/ /       \ \_\\ \/___/ /
\_\/       \/_________/         \/_/ \_____\/
frozen 1.1.1-0.dd1f58c
Channel: guix
Location: gnu/packages/cpp.scm (gnu packages cpp)
Home page: https://github.com/serge-sans-paille/frozen
Licenses: ASL 2.0
Build system: cmake
Synopsis: C++ constexpr alternative header-only library
Description:

frozen is a header-only library that provides zero cost initialization for immutable containers, fixed-size containers, and various algorithms. It provides features such as:

  • immutable (also known as frozen), constexpr-compatible versions of std::set, std::unordered_set, std::map and std::unordered_map

  • fixed-capacity, constinit-compatible versions of std::map and std::unordered_map with immutable, compile-time selected keys mapped to mutable values.

  • zero cost initialization version of std::search for frozen needles using Boyer-Moore or Knuth-Morris-Pratt algorithms.

The unordered_* containers are guaranteed perfect (no hash collision) and the extra storage is linear with respect to the number of keys.

Total packages: 1