You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Vector<I, T> is secretly an IndexVec<I, Option<T>>. There's something slightly misleading there: sometimes (e.g. in GenericParams) we expect all the values to be Some, sometimes (e.g. in the top-level fun_decls etc arrays) we intentionally allow for missing entries.
We should clarify the intent by splitting it into IndexVec and IndexMap, where the first one does not allow for vacant entries. When converting to OCaml we manually convert the map cases to a map anyway, so this will give us a more principled reason to do so.
The text was updated successfully, but these errors were encountered:
A
Vector<I, T>
is secretly anIndexVec<I, Option<T>>
. There's something slightly misleading there: sometimes (e.g. inGenericParams
) we expect all the values to beSome
, sometimes (e.g. in the top-levelfun_decls
etc arrays) we intentionally allow for missing entries.We should clarify the intent by splitting it into
IndexVec
andIndexMap
, where the first one does not allow for vacant entries. When converting to OCaml we manually convert the map cases to a map anyway, so this will give us a more principled reason to do so.The text was updated successfully, but these errors were encountered: