constant
native.rb_map.mk_core
{key : Type}
(data : Type)
(a : key → key → ordering) :
native.rb_map key data
constant
native.rb_map.insert
{key data : Type}
(a : native.rb_map key data)
(a_1 : key)
(a_2 : data) :
native.rb_map key data
constant
native.rb_map.erase
{key data : Type}
(a : native.rb_map key data)
(a_1 : key) :
native.rb_map key data
constant
native.rb_map.find
{key data : Type}
(a : native.rb_map key data)
(a_1 : key) :
option data
constant
native.rb_map.fold
{key data α : Type}
(a : native.rb_map key data)
(a_1 : α)
(a_2 : key → data → α → α) :
α
def
native.rb_map.mk
(key : Type)
[has_lt key]
[decidable_rel has_lt.lt]
(data : Type) :
native.rb_map key data
def
native.rb_map.mfold
{key data α : Type}
{m : Type → Type}
[monad m]
(mp : native.rb_map key data)
(a : α)
(fn : key → data → α → m α) :
m α
def
native.rb_map.of_list
{key data : Type}
[has_lt key]
[decidable_rel has_lt.lt]
(a : list (key × data)) :
native.rb_map key data
def
native.rb_map.set_of_list
{key : Type}
[has_lt key]
[decidable_rel has_lt.lt]
(a : list key) :
native.rb_map key unit
def
native.rb_map.map
{key data data' : Type}
[has_lt key]
[decidable_rel has_lt.lt]
(f : data → data')
(m : native.rb_map key data) :
native.rb_map key data'
def
native.rb_map.for
{key data data' : Type}
[has_lt key]
[decidable_rel has_lt.lt]
(m : native.rb_map key data)
(f : data → data') :
native.rb_map key data'
def
native.rb_map.filter
{key data : Type}
[has_lt key]
[decidable_rel has_lt.lt]
(m : native.rb_map key data)
(f : data → Prop)
[decidable_pred f] :
native.rb_map key data
def
native.mk_rb_map
{key data : Type}
[has_lt key]
[decidable_rel has_lt.lt] :
native.rb_map key data
@[instance]
def
native.has_to_format
{key data : Type}
[has_to_format key]
[has_to_format data] :
has_to_format (native.rb_map key data)
@[instance]
def
native.has_to_string
{key data : Type}
[has_to_string key]
[has_to_string data] :
has_to_string (native.rb_map key data)
a variant of rb_maps that stores a list of elements for each key.
find
returns the list of elements in the opposite order that they were inserted.
def
native.rb_lmap.mk
(key : Type)
[has_lt key]
[decidable_rel has_lt.lt]
(data : Type) :
native.rb_lmap key data
def
native.rb_lmap.insert
{key data : Type}
(rbl : native.rb_lmap key data)
(k : key)
(d : data) :
native.rb_lmap key data
def
native.rb_lmap.erase
{key data : Type}
(rbl : native.rb_lmap key data)
(k : key) :
native.rb_lmap key data
def
native.rb_set.mfold
{key α : Type}
{m : Type → Type}
[monad m]
(s : native.rb_set key)
(a : α)
(fn : key → α → m α) :
m α
@[instance]
def
native.rb_set.has_to_format
{key : Type}
[has_to_format key] :
has_to_format (native.rb_set key)
def
name_set.mfold
{α : Type}
{m : Type → Type}
[monad m]
(ns : name_set)
(a : α)
(fn : name → α → m α) :
m α