----------------------------------------------------------------------------- -- -- Module : PureScript.Declarations -- Copyright : (c) Phil Freeman 2013 -- License : MIT -- -- Maintainer : Phil Freeman -- Stability : experimental -- Portability : -- -- | -- ----------------------------------------------------------------------------- module PureScript.Declarations ( Declaration (..), DataConstructors (..) ) where import PureScript.Values import PureScript.Types data Declaration = DataDeclaration DataConstructors | TypeDeclaration String Type | ValueDeclaration String Value | ExternDeclaration String Type deriving Show data DataConstructors = DataConstructors { typeConstructorName :: String , typeArguments :: [String] , dataConstructors :: [(String, Maybe Type)] } deriving Show