module Staversion.Internal.Result
( Result(..),
ResultBody(..)
) where
import Data.Version (Version)
import Staversion.Internal.Query
( Query, PackageSource, ErrorMsg, PackageName
)
import Staversion.Internal.Cabal (Target)
data Result = Result { resultIn :: PackageSource,
resultFor :: Query,
resultReallyIn :: Maybe PackageSource,
resultBody :: Either ErrorMsg ResultBody
} deriving (Show,Eq)
data ResultBody = SimpleResultBody PackageName (Maybe Version)
| CabalResultBody FilePath Target [(PackageName, (Maybe Version))]
deriving (Show,Eq)