{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DerivingStrategies #-} module Package.C.Type.Shared ( VersionBound (..) , Dep (..) ) where import qualified Data.Text as T import Dhall import Package.C.Type.Version data VersionBound = Lower { lower :: Version } | Upper { upper :: Version } | LowerUpper { lower :: Version, upper :: Version } | NoBound deriving (Generic, Interpret) data Dep = Dep { name :: T.Text , bound :: VersionBound } deriving (Generic, Interpret)