Consistency.hs revision 09847a0124ff1662f6da56cd0ee08c3d539a025c
4b0a4c7dea0f67a233dcc42ce9bb18d36de109aeChristian Maeder{- |
4b0a4c7dea0f67a233dcc42ce9bb18d36de109aeChristian MaederModule : $Header$
5ba323da9f037264b4a356085e844889aedeac23Christian MaederDescription : data types for consistency
c58a94c44b76b072ace930f2126c889c0b64cb2aChristian MaederCopyright : (c) Christian Maeder, DFKI GmbH 2008
97018cf5fa25b494adffd7e9b4e87320dae6bf47Christian MaederLicense : similar to LGPL, see HetCATS/LICENSE.txt or LIZENZ.txt
ea03c5d09694b4a966fbd19d46cfa5772648d95fChristian Maeder
3f69b6948966979163bdfe8331c38833d5d90ecdChristian MaederMaintainer : Christian.Maeder@dfki.de
4b0a4c7dea0f67a233dcc42ce9bb18d36de109aeChristian MaederStability : provisional
4561227a776bdf0ab679b19fb92f1eaaed8786f7Christian MaederPortability : portable
4b0a4c7dea0f67a233dcc42ce9bb18d36de109aeChristian Maeder
f3a94a197960e548ecd6520bb768cb0d547457bbChristian MaederData types for consistency
ea03c5d09694b4a966fbd19d46cfa5772648d95fChristian Maeder-}
ea03c5d09694b4a966fbd19d46cfa5772648d95fChristian Maeder
e8ffec0fa3d3061061bdc16e44247b9cf96b050fChristian Maedermodule Common.Consistency where
502ed7ed7fecd10b6d0c83cdd48a244ec45e840aChristian Maeder
e8ffec0fa3d3061061bdc16e44247b9cf96b050fChristian Maederimport Data.Char (toLower)
950e053ba55ac9c7d9c26a1ab48bd00202b29511Christian Maederimport Common.Doc
81946e2b3f6dde6167f48769bd02c7a634736856Christian Maederimport Common.DocUtils
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder
ad270004874ce1d0697fb30d7309f180553bb315Christian Maederdata ConsistencyStatus =
f8c07dc6526e0134d66885d461a30abadc2c6038Christian Maeder Inconsistent | Conservative | Monomorphic | Definitional | Unknown String
afa6848d579d235c9677e1ab477916df8e5ae11aChristian Maeder deriving (Show, Eq, Ord)
dc6b48bb46df8e56da3491c98476e6da0d1d5d1dChristian Maeder
4561227a776bdf0ab679b19fb92f1eaaed8786f7Christian MaedershowConsistencyStatus :: ConsistencyStatus -> String
b603f34b79bc0992e5d74f484e5bdc9f9c2346c6Christian MaedershowConsistencyStatus cs = case cs of
4561227a776bdf0ab679b19fb92f1eaaed8786f7Christian Maeder Inconsistent -> "not conservative"
c00adad2e9459b422dee09e3a2bddba66b433bb7Christian Maeder Unknown str -> "unkown if being conservative. Cause is : " ++ str
9348e8460498ddfcd9da11cd8b5794c06023e004Christian Maeder _ -> map toLower $ show cs
fd5d3885a092ac0727fa2436cdfc3b248318ebd8Christian Maeder
4561227a776bdf0ab679b19fb92f1eaaed8786f7Christian Maederinstance Pretty ConsistencyStatus where
0be2d0cfd911d313e7e941edbc77f95052c8c19bChristian Maeder pretty = text . showConsistencyStatus
0be2d0cfd911d313e7e941edbc77f95052c8c19bChristian Maeder