Documentation

Std.Data.AssocList

inductive Std.AssocList (α : Type u) (β : Type v) :
Type (max u v)
instance Std.instInhabitedAssocList :
{a : Type u_1} → {a_1 : Type u_2} → Inhabited (Std.AssocList a a_1)
Equations
  • Std.instInhabitedAssocList = { default := Std.AssocList.nil }
@[inline]
abbrev Std.AssocList.empty {α : Type u} {β : Type v} :
Equations
  • Std.AssocList.empty = Std.AssocList.nil
instance Std.AssocList.instEmptyCollectionAssocList {α : Type u} {β : Type v} :
Equations
  • Std.AssocList.instEmptyCollectionAssocList = { emptyCollection := Std.AssocList.empty }
@[inline]
abbrev Std.AssocList.insert {α : Type u} {β : Type v} (m : Std.AssocList α β) (k : α) (v : β) :
Equations
def Std.AssocList.isEmpty {α : Type u} {β : Type v} :
Equations
@[specialize]
def Std.AssocList.foldlM {α : Type u} {β : Type v} {δ : Type w} {m : Type wType w} [inst : Monad m] (f : δαβm δ) (init : δ) :
Std.AssocList α βm δ
Equations
@[inline]
def Std.AssocList.foldl {α : Type u} {β : Type v} {δ : Type w} (f : δαβδ) (init : δ) (as : Std.AssocList α β) :
δ
Equations
def Std.AssocList.toList {α : Type u} {β : Type v} (as : Std.AssocList α β) :
List (α × β)
Equations
@[specialize]
def Std.AssocList.forM {α : Type u} {β : Type v} {m : Type wType w} [inst : Monad m] (f : αβm PUnit) :
Std.AssocList α βm PUnit
Equations
def Std.AssocList.mapKey {α : Type u} {β : Type v} {δ : Type w} (f : αδ) :
Equations
def Std.AssocList.mapVal {α : Type u} {β : Type v} {δ : Type w} (f : βδ) :
Equations
def Std.AssocList.findEntry? {α : Type u} {β : Type v} [inst : BEq α] (a : α) :
Std.AssocList α βOption (α × β)
Equations
def Std.AssocList.find? {α : Type u} {β : Type v} [inst : BEq α] (a : α) :
Std.AssocList α βOption β
Equations
def Std.AssocList.contains {α : Type u} {β : Type v} [inst : BEq α] (a : α) :
Equations
def Std.AssocList.replace {α : Type u} {β : Type v} [inst : BEq α] (a : α) (b : β) :
Equations
def Std.AssocList.erase {α : Type u} {β : Type v} [inst : BEq α] (a : α) :
Equations
def Std.AssocList.any {α : Type u} {β : Type v} (p : αβBool) :
Equations
def Std.AssocList.all {α : Type u} {β : Type v} (p : αβBool) :
Equations
@[inline]
def Std.AssocList.forIn {α : Type u} {β : Type v} {δ : Type w} {m : Type wType w'} [inst : Monad m] (as : Std.AssocList α β) (init : δ) (f : α × βδm (ForInStep δ)) :
m δ
Equations
@[specialize]
def Std.AssocList.forIn.loop {α : Type u} {β : Type v} {δ : Type w} {m : Type wType w'} [inst : Monad m] (f : α × βδm (ForInStep δ)) :
δStd.AssocList α βm δ
Equations
instance Std.AssocList.instForInAssocListProd {α : Type u} {β : Type v} {m : Type wType w} :
ForIn m (Std.AssocList α β) (α × β)
Equations
  • Std.AssocList.instForInAssocListProd = { forIn := fun {β} [Monad m] => Std.AssocList.forIn }
def List.toAssocList {α : Type u} {β : Type v} :
List (α × β)Std.AssocList α β
Equations