eternal

コンパイル時に作る読み取り専用のマップとハッシュマップを提供する、ヘッダーのみのC++14ライブラリです。バイナリが小さく、ルックアップテーブル向けです。

Xで共有ライセンス: ISC

概要

eternal.hppは、constexprでコンパイル時に作るマップとハッシュマップを提供するヘッダーオンリーのC++14ライブラリです。APIはstd::mapやstd::unordered_mapとある程度互換ですが、挿入や変更はできません。重視するのはバイナリサイズで、生成コードを最小限に抑え、静的初期化のコストもありません。READMEは用途として検索テーブルを挙げ、検証済みコンパイラを列挙しています。

主な特長

  • mapbox::eternal::mapでコンパイル時マップを作成
  • mapbox::eternal::hash_mapでハッシュマップを作成
  • mapbox::eternal::stringでconstexpr文字列
  • 読み取り専用で挿入や変更は不可
  • 静的初期化のオーバーヘッドなし

こんな人・用途に

バイナリサイズを抑えつつ固定の検索テーブルが欲しいC++開発者向けです。ハッシュマップのキーにはstd::hashの特殊化が必要です。

アップストリーム
mapbox/eternal
GitHubのフォーク
Guo-astro/eternal
アップストリームのスター数
223
カテゴリ
開発者ツールとインフラ
ライセンス
ISC
フォーク日
2020-11-01
同期状態
同期済み最終同期 2026-09-29