I've written a function, that Inserts an Element into a binary Tree, but every time I try to run it, I get the a non-exhaustive pattern in function.
type Eintrag = (Person, Anschrift, SozNr)
data Tree = Nil | Node Eintrag Tree Tree deriving (Eq, Show)
singleton :: Eintrag -> Tree
singleton x = Node x Nil Nil
genTree :: Eintrag -> Tree-> Tree
genTree x (Node e l r)= if ((Node e l r)==Nil)
then (singleton x)
else if (soznr x) < (soznr e )
then (Node e (genTree x l) r)
else if (soznr x) > (soznr e )
then (Node e l (genTree x r))
else (Node e l r)
Could you please give me some hints? Thanks