$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Julien Blanc (julien.blanc_at_[hidden])
Date: 2022-06-02 05:57:56
Hi,
I've written and released a (rather small) library which allows
defining arrays with arbitrary index mechanisms (hence the name,
indexed_array). This especially allows indexing with scoped enums, use
non zero-starting indexes, or use sparse indexes. This is not a view,
but an array in the sense that it owns the data, and provides the same
guarantees and functionalities as std::array, such as triviality
propagation, being able to reside in read-only program sections, etc.
It also supports multidimensional indexing, and provides an
indexed_span template class to access lower dimension content (which
can be used outside indexed_array).
Finally, it provides an opt-in safer way to initialize the array
content, which is especially useful when using complex and/or changing
indexing schemes (like based on externally generated files).
The library is available here:
https://github.com/Julien-Blanc-tgcm/indexed_array
And the doc is here:
https://julien-blanc-tgcm.github.io/indexed_array/
It requires C++17 and mp11, and has first-class support for describe-d
enums.
If there is some interest, i'd like to propose it for inclusion in
boost. So i'm looking for people who would endorse it.
Thanks and best regards,
Julien