Open
Description
The implementation uses a number of unstable features, which have to be stabilized, before it can be published to crates.io.
- Currently one is not allowed to use const and type parameters with default parameters, because no design decision has been made yet: Tracking issue for const generics (RFC 2000) rust-lang/rust#44580
-
[(); N].map(|_| None)
is used to initialize an array withNone
: Tracking Issue forarray_map
rust-lang/rust#75243 -
ArrayMap::get_each_key_value_mut
requires[T; N]::each_mut
: Tracking Issue forarray_methods
rust-lang/rust#76118 -
TryFromIterator
uses the "never-type" (!
) for an implementation, which can be replaced withcore::convert::Infallible
: never type stabilization rust-lang/lang-team#60 -
[T; N]::try_map
is not implemented in the standard library, so a custom implementation is used, which requiresmaybe_uninit_uninit_array
,maybe_uninit_array_assume_init
andtry_trait_v2
: Tracking issue forarray::try_map
rust-lang/rust#79711 -
stmt_expr_attributes
required for makingahash
optional in thearray_map
macro: Tracking issue for stmt_expr_attributes: Add attributes to expressions, etc. rust-lang/rust#15701