Documentation

Init.Data.Option.Array

@[simp]
theorem Option.mem_toArray {α : Type u_1} {a : α} {o : Option α} :
a o.toArray o = some a
@[simp]
theorem Option.forIn'_toArray {m : Type u_1 → Type u_2} {α : Type u_3} {β : Type u_1} [Monad m] (o : Option α) (b : β) (f : (a : α) → a o.toArrayβm (ForInStep β)) :
forIn' o.toArray b f = forIn' o b fun (a : α) (m : a o) (b : β) => f a b
@[simp]
theorem Option.forIn_toArray {m : Type u_1 → Type u_2} {α : Type u_3} {β : Type u_1} [Monad m] (o : Option α) (b : β) (f : αβm (ForInStep β)) :
forIn o.toArray b f = forIn o b f
@[simp]
theorem Option.foldlM_toArray {m : Type u_1 → Type u_2} {β : Type u_3} {α : Type u_1} [Monad m] [LawfulMonad m] (o : Option β) (a : α) (f : αβm α) :
Array.foldlM f a o.toArray = o.elim (pure a) fun (b : β) => f a b
@[simp]
theorem Option.foldrM_toArray {m : Type u_1 → Type u_2} {β : Type u_3} {α : Type u_1} [Monad m] [LawfulMonad m] (o : Option β) (a : α) (f : βαm α) :
Array.foldrM f a o.toArray = o.elim (pure a) fun (b : β) => f b a
@[simp]
theorem Option.foldl_toArray {β : Type u_1} {α : Type u_2} (o : Option β) (a : α) (f : αβα) :
Array.foldl f a o.toArray = o.elim a fun (b : β) => f a b
@[simp]
theorem Option.foldr_toArray {β : Type u_1} {α : Type u_2} (o : Option β) (a : α) (f : βαα) :
Array.foldr f a o.toArray = o.elim a fun (b : β) => f b a
@[simp]
theorem Option.toList_toArray {α : Type u_1} {o : Option α} :
@[simp]
theorem Option.toArray_toList {α : Type u_1} {o : Option α} :
theorem Option.toArray_filter {α : Type u_1} {o : Option α} {p : αBool} :
theorem Option.toArray_bind {α : Type u_1} {β : Type u_2} {o : Option α} {f : αOption β} :
theorem Option.toArray_map {α : Type u_1} {β : Type u_2} {o : Option α} {f : αβ} :
theorem Option.toArray_min {α : Type u_1} [Min α] {o o' : Option α} :
@[simp]
theorem Option.size_toArray_le {α : Type u_1} {o : Option α} :
theorem Option.size_toArray {α : Type u_1} {o : Option α} :
@[simp]
theorem Option.toArray_eq_empty_iff {α : Type u_1} {o : Option α} :
@[simp]
theorem Option.toArray_eq_singleton_iff {α : Type u_1} {a : α} {o : Option α} :
@[simp]
theorem Option.size_toArray_eq_one_iff {α : Type u_1} {o : Option α} :