This package browser is in early development. Mind the rough edges.

frozen

C++ constexpr alternative header-only library

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.

Installation

Install the latest version of frozen as follows:

guix install frozen

Or install a particular version:

guix install frozen@1.1.1-0.dd1f58c

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.

Badge code

You can use the following badge to inform users of frozen about the latest version available in Guix.

Example HTML:

<a href='https://packages.guix.gnu.org/packages/frozen'><img src='https://packages.guix.gnu.org/packages/frozen/badges/latest-version.svg' alt='Version in GNU Guix'></a>

Example Markdown:

[![Version in GNU Guix](https://packages.guix.gnu.org/packages/frozen/badges/latest-version.svg)](https://packages.guix.gnu.org/packages/frozen)

Example Org:

[[https://packages.guix.gnu.org/packages/frozen][https://packages.guix.gnu.org/packages/frozen/badges/latest-version.svg]]