Specialised map from `Fin`s to any type. Isomorphic to a vector of appropriate size of maybe's of appropriate type. This should be a replacement for `SortedMap (Fin n) v` working better at least in elaborator scripts.
data FinMap : Nat -> Type -> Typeempty : FinMap n vlookup : Fin n -> FinMap n v -> Maybe vlookup' : FinMap n v -> Fin n -> Maybe vinsert : Fin n -> v -> FinMap n v -> FinMap n vinsertWith : (v -> v -> v) -> Fin n -> v -> FinMap n v -> FinMap n vinsert' : FinMap n v -> (Fin n, v) -> FinMap n vsingleton : Fin n -> v -> FinMap n vinsertFrom : Foldable f => f (Fin n, v) -> FinMap n v -> FinMap n vinsertFrom' : Foldable f => FinMap n v -> f (Fin n, v) -> FinMap n vinsertFromWith : Foldable f => (v -> v -> v) -> f (Fin n, v) -> FinMap n v -> FinMap n vdelete : Fin n -> FinMap n v -> FinMap n vdelete' : FinMap n v -> Fin n -> FinMap n vupdate : (Maybe v -> Maybe v) -> Fin n -> FinMap n v -> FinMap n vupdate' : FinMap n v -> (Maybe v -> Maybe v) -> Fin n -> FinMap n vupdateExisting : (v -> v) -> Fin n -> FinMap n v -> FinMap n vupdateExisting' : FinMap n v -> (v -> v) -> Fin n -> FinMap n vfromFoldable : Foldable f => f (Fin n, v) -> FinMap n vfromFoldableWith : Foldable f => (v -> v -> v) -> f (Fin n, v) -> FinMap n vfromList : List (Fin n, v) -> FinMap n vfromListWith : (v -> v -> v) -> List (Fin n, v) -> FinMap n viList : Vect n a -> List (Fin n, a)kvList : FinMap n v -> List (Fin n, v).asKVList : FinMap n v -> List (Fin n, v)keys : FinMap n v -> List (Fin n)values : FinMap n v -> List vmapWithKey : (Fin n -> v -> w) -> FinMap n v -> FinMap n wmapWithKey' : FinMap n v -> (Fin n -> v -> w) -> FinMap n wtraverseWithKey : Applicative m => (Fin n -> v -> m w) -> FinMap n v -> m (FinMap n w)forWithKey : Applicative m => FinMap n v -> (Fin n -> v -> m w) -> m (FinMap n w)mergeWith : (v -> v -> v) -> FinMap n v -> FinMap n v -> FinMap n vMerge two maps, when encountering duplicate keys, uses a function to combine the values.
merge : Semigroup v => FinMap n v -> FinMap n v -> FinMap n vmergeLeft : FinMap n v -> FinMap n v -> FinMap n vleftMost : FinMap n v -> Maybe (Fin n, v)rightMost : FinMap n v -> Maybe (Fin n, v)size : FinMap n v -> Nat.size : FinMap n v -> Nat.asKVVect : (fs : FinMap n v) -> Vect (fs .size) (Fin n, v)fromSortedMap : SortedMap (Fin n) v -> FinMap n vweakenToSuper : FinMap (finToNat i) v -> FinMap n v