{- | Description: Data types for features and feature formulas. License: GNU LGPLv3 Maintainer: paul.bittner@uni-ulm.de Data types for features and feature formulas. -} module Feature where import Propositions import NullPropositions -- | Features are represented by a unique name. type Feature = String -- | Construct a feature from a name. toFeature :: String -> Feature toFeature :: String -> String toFeature = String -> String forall a. a -> a id -- | 'PropositionalFormula' over 'Feature's type NonNullFeatureFormula = PropositionalFormula Feature -- | Nullable 'PropositionalFormula' over 'Feature's type FeatureFormula = NullableFormula Feature