Documentation

Std.Data.HashSet

noncomputable def Std.HashSetBucket (α : Type u) :
Type u
Equations
def Std.HashSetBucket.update {α : Type u} (data : Std.HashSetBucket α) (i : USize) (d : List α) (h : USize.toNat i < Array.size data.val) :
Equations
structure Std.HashSetImp (α : Type u) :
Type u
def Std.mkHashSetImp {α : Type u} (nbuckets : optParam Nat 8) :
Equations
def Std.HashSetImp.mkIdx {n : Nat} (h : n > 0) (u : USize) :
{ u // USize.toNat u < n }
Equations
@[inline]
def Std.HashSetImp.reinsertAux {α : Type u} (hashFn : αUInt64) (data : Std.HashSetBucket α) (a : α) :
Equations
@[inline]
def Std.HashSetImp.foldBucketsM {α : Type u} {δ : Type w} {m : Type wType w} [inst : Monad m] (data : Std.HashSetBucket α) (d : δ) (f : δαm δ) :
m δ
Equations
@[inline]
def Std.HashSetImp.foldBuckets {α : Type u} {δ : Type w} (data : Std.HashSetBucket α) (d : δ) (f : δαδ) :
δ
Equations
@[inline]
def Std.HashSetImp.foldM {α : Type u} {δ : Type w} {m : Type wType w} [inst : Monad m] (f : δαm δ) (d : δ) (h : Std.HashSetImp α) :
m δ
Equations
@[inline]
def Std.HashSetImp.fold {α : Type u} {δ : Type w} (f : δαδ) (d : δ) (m : Std.HashSetImp α) :
δ
Equations
def Std.HashSetImp.find? {α : Type u} [inst : BEq α] [inst : Hashable α] (m : Std.HashSetImp α) (a : α) :
Equations
def Std.HashSetImp.contains {α : Type u} [inst : BEq α] [inst : Hashable α] (m : Std.HashSetImp α) (a : α) :
Equations
partial def Std.HashSetImp.moveEntries {α : Type u} [inst : Hashable α] (i : Nat) (source : Array (List α)) (target : Std.HashSetBucket α) :
def Std.HashSetImp.expand {α : Type u} [inst : Hashable α] (size : Nat) (buckets : Std.HashSetBucket α) :
Equations
def Std.HashSetImp.insert {α : Type u} [inst : BEq α] [inst : Hashable α] (m : Std.HashSetImp α) (a : α) :
Equations
def Std.HashSetImp.erase {α : Type u} [inst : BEq α] [inst : Hashable α] (m : Std.HashSetImp α) (a : α) :
Equations
inductive Std.HashSetImp.WellFormed {α : Type u} [inst : BEq α] [inst : Hashable α] :
Std.HashSetImp αProp
noncomputable def Std.HashSet (α : Type u) [inst : BEq α] [inst : Hashable α] :
Type u
Equations
def Std.mkHashSet {α : Type u} [inst : BEq α] [inst : Hashable α] (nbuckets : optParam Nat 8) :
Equations
@[inline]
def Std.HashSet.empty {α : Type u_1} [inst : BEq α] [inst : Hashable α] :
Equations
  • Std.HashSet.empty = Std.mkHashSet
instance Std.HashSet.instInhabitedHashSet {α : Type u_1} [inst : BEq α] [inst : Hashable α] :
Equations
  • Std.HashSet.instInhabitedHashSet = { default := Std.mkHashSet }
instance Std.HashSet.instEmptyCollectionHashSet {α : Type u_1} [inst : BEq α] [inst : Hashable α] :
Equations
  • Std.HashSet.instEmptyCollectionHashSet = { emptyCollection := Std.mkHashSet }
@[inline]
def Std.HashSet.insert {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet ααStd.HashSet α
Equations
@[inline]
def Std.HashSet.erase {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet ααStd.HashSet α
Equations
@[inline]
def Std.HashSet.find? {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet ααOption α
Equations
@[inline]
def Std.HashSet.contains {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet ααBool
Equations
@[inline]
def Std.HashSet.foldM {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → {δ : Type w} → {m : Type wType w} → [inst : Monad m] → (δαm δ) → δStd.HashSet αm δ
Equations
@[inline]
def Std.HashSet.fold {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → {δ : Type w} → (δαδ) → δStd.HashSet αδ
Equations
@[inline]
def Std.HashSet.size {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet αNat
Equations
  • Std.HashSet.size m = match m with | { val := { size := sz, buckets := x }, property := x_1 } => sz
@[inline]
def Std.HashSet.isEmpty {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet αBool
Equations
def Std.HashSet.toList {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet αList α
Equations
def Std.HashSet.toArray {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet αArray α
Equations
def Std.HashSet.numBuckets {α : Type u} :
{x : BEq α} → {x_1 : Hashable α} → Std.HashSet αNat
Equations