Packages
doma_algae
1.3.1-doma
Bootstrapped algebraic data types for Elixir, forked by doma for maintenance and testing packagesets
Current section
Files
Jump to
Current section
Files
lib/algae/tree/binary_search/extend.ex
alias Algae.Tree.BinarySearch.{Empty, Node}
import TypeClass
use Witchcraft
definst Witchcraft.Extend, for: Algae.Tree.BinarySearch.Empty do
def nest(_), do: %Empty{}
end
definst Witchcraft.Extend, for: Algae.Tree.BinarySearch.Node do
def nest(tree = %Node{left: left, right: right}) do
%Node{
node: tree,
left: Witchcraft.Extend.nest(left),
right: Witchcraft.Extend.nest(right)
}
end
end