module HaScalaM.Types.Enums where
import HaScalaM.Classes.Base
import HaScalaM.Classes.Term
data SmCaseGeneratorE p b where
SmCaseGeneratorE :: ( Pat p
, Term b
) => { forall p b. SmCaseGeneratorE p b -> p
patCGE :: p
, forall p b. SmCaseGeneratorE p b -> b
rhsCGE :: b } -> SmCaseGeneratorE p b
data SmGeneratorE p b where
SmGeneratorE :: ( Pat p
, Term b
) => { forall p b. SmGeneratorE p b -> p
patGE :: p
, forall p b. SmGeneratorE p b -> b
rhsGE :: b } -> SmGeneratorE p b
data SmGuardE b where
SmGuardE :: Term b => { forall b. SmGuardE b -> b
condGE :: b } -> SmGuardE b
data SmValE p b where
SmValE :: ( Pat p
, Term b
) => { forall p b. SmValE p b -> p
patVE :: p
, forall p b. SmValE p b -> b
rhsVE :: b } -> SmValE p b