File: .lake/packages/lean4/src/lean/Lean/Data/RBTree.lean

full_name: Lean.RBTree
code: def RBTree (α : Type u) (cmp : α → α → Ordering) : Type u 
goal: Type u

full_name: Lean.instInhabitedRBTree
code: instance : Inhabited (RBTree α p) 
goal: Inhabited (Lean.RBTree α p)

full_name: Lean.mkRBTree
code: @[inline] def mkRBTree (α : Type u) (cmp : α → α → Ordering) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.instEmptyCollectionRBTree
code: instance (α : Type u) (cmp : α → α → Ordering) : EmptyCollection (RBTree α cmp) 
goal: EmptyCollection (Lean.RBTree α cmp)

full_name: Lean.RBTree.empty
code: @[inline] def empty : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.depth
code: @[inline] def depth (f : Nat → Nat → Nat) (t : RBTree α cmp) : Nat 
goal: Nat

full_name: Lean.RBTree.fold
code: @[inline] def fold (f : β → α → β) (init : β) (t : RBTree α cmp) : β 
goal: β

full_name: Lean.RBTree.revFold
code: @[inline] def revFold (f : β → α → β) (init : β) (t : RBTree α cmp) : β 
goal: β

full_name: Lean.RBTree.foldM
code: @[inline] def foldM {m : Type v → Type w} [Monad m] (f : β → α → m β) (init : β) (t : RBTree α cmp) : m β 
goal: m β

full_name: Lean.RBTree.forM
code: @[inline] def forM {m : Type v → Type w} [Monad m] (f : α → m PUnit) (t : RBTree α cmp) : m PUnit 
goal: m PUnit

full_name: Lean.RBTree.forIn
code: @[inline] protected def forIn [Monad m] (t : RBTree α cmp) (init : σ) (f : α → σ → m (ForInStep σ)) : m σ 
goal: m σ

full_name: Lean.RBTree.instForIn
code: instance : ForIn m (RBTree α cmp) α 
goal: ForIn m (Lean.RBTree α cmp) α

full_name: Lean.RBTree.isEmpty
code: @[inline] def isEmpty (t : RBTree α cmp) : Bool 
goal: Bool

full_name: Lean.RBTree.toList
code: @[specialize] def toList (t : RBTree α cmp) : List α 
goal: List α

full_name: Lean.RBTree.toArray
code: @[specialize] def toArray (t : RBTree α cmp) : Array α 
goal: Array α

full_name: Lean.RBTree.min
code: @[inline] protected def min (t : RBTree α cmp) : Option α 
goal: Option α

full_name: Lean.RBTree.max
code: @[inline] protected def max (t : RBTree α cmp) : Option α 
goal: Option α

full_name: Lean.RBTree.instRepr
code: instance [Repr α] : Repr (RBTree α cmp) 
goal: Repr (Lean.RBTree α cmp)

full_name: Lean.RBTree.insert
code: @[inline] def insert (t : RBTree α cmp) (a : α) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.erase
code: @[inline] def erase (t : RBTree α cmp) (a : α) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.ofList
code: @[specialize] def ofList : List α → RBTree α cmp
  
goal: List α → Lean.RBTree α cmp

full_name: Lean.RBTree.find?
code: @[inline] def find? (t : RBTree α cmp) (a : α) : Option α 
goal: Option α

full_name: Lean.RBTree.contains
code: @[inline] def contains (t : RBTree α cmp) (a : α) : Bool 
goal: Bool

full_name: Lean.RBTree.fromList
code: def fromList (l : List α) (cmp : α → α → Ordering) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.fromArray
code: def fromArray (l : Array α) (cmp : α → α → Ordering) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.all
code: @[inline] def all (t : RBTree α cmp) (p : α → Bool) : Bool 
goal: Bool

full_name: Lean.RBTree.any
code: @[inline] def any (t : RBTree α cmp) (p : α → Bool) : Bool 
goal: Bool

full_name: Lean.RBTree.subset
code: def subset (t₁ t₂ : RBTree α cmp) : Bool 
goal: Bool

full_name: Lean.RBTree.seteq
code: def seteq (t₁ t₂ : RBTree α cmp) : Bool 
goal: Bool

full_name: Lean.RBTree.union
code: def union (t₁ t₂ : RBTree α cmp) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.RBTree.diff
code: def diff (t₁ t₂ : RBTree α cmp) : RBTree α cmp 
goal: Lean.RBTree α cmp

full_name: Lean.rbtreeOf
code: def rbtreeOf {α : Type u} (l : List α) (cmp : α → α → Ordering) : RBTree α cmp 
goal: Lean.RBTree α cmp