hackage-api-0.1.0: An API binding to Hackage API
Safe HaskellNone
LanguageHaskell2010

Distribution.Hackage.Types

Documentation

newtype Time Source #

Constructors

Time UTCTime 

Instances

Instances details
Eq Time Source # 
Instance details

Defined in Distribution.Hackage.Types

Methods

(==) :: Time -> Time -> Bool #

(/=) :: Time -> Time -> Bool #

Show Time Source # 
Instance details

Defined in Distribution.Hackage.Types

Methods

showsPrec :: Int -> Time -> ShowS #

show :: Time -> String #

showList :: [Time] -> ShowS #

FromJSON Time Source # 
Instance details

Defined in Distribution.Hackage.Types

data Version Source #

Constructors

Default 
Version Text 

Instances

Instances details
Eq Version Source # 
Instance details

Defined in Distribution.Hackage.Types

Methods

(==) :: Version -> Version -> Bool #

(/=) :: Version -> Version -> Bool #

Show Version Source # 
Instance details

Defined in Distribution.Hackage.Types

Generic Version Source # 
Instance details

Defined in Distribution.Hackage.Types

Associated Types

type Rep Version :: Type -> Type #

Methods

from :: Version -> Rep Version x #

to :: Rep Version x -> Version #

FromJSON Version Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Version Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Version = D1 ('MetaData "Version" "Distribution.Hackage.Types" "hackage-api-0.1.0-inplace" 'False) (C1 ('MetaCons "Default" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Version" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))

data Package Source #

Constructors

Package 

Instances

Instances details
Eq Package Source # 
Instance details

Defined in Distribution.Hackage.Types

Methods

(==) :: Package -> Package -> Bool #

(/=) :: Package -> Package -> Bool #

Show Package Source # 
Instance details

Defined in Distribution.Hackage.Types

Generic Package Source # 
Instance details

Defined in Distribution.Hackage.Types

Associated Types

type Rep Package :: Type -> Type #

Methods

from :: Package -> Rep Package x #

to :: Rep Package x -> Package #

FromJSON Package Source # 
Instance details

Defined in Distribution.Hackage.Types

ToHttpApiData Package Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Package Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Package = D1 ('MetaData "Package" "Distribution.Hackage.Types" "hackage-api-0.1.0-inplace" 'False) (C1 ('MetaCons "Package" 'PrefixI 'True) (S1 ('MetaSel ('Just "packageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Version)))

data Revision Source #

Constructors

Revision 

Fields

Instances

Instances details
Eq Revision Source # 
Instance details

Defined in Distribution.Hackage.Types

Show Revision Source # 
Instance details

Defined in Distribution.Hackage.Types

Generic Revision Source # 
Instance details

Defined in Distribution.Hackage.Types

Associated Types

type Rep Revision :: Type -> Type #

Methods

from :: Revision -> Rep Revision x #

to :: Rep Revision x -> Revision #

FromJSON Revision Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Revision Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Revision = D1 ('MetaData "Revision" "Distribution.Hackage.Types" "hackage-api-0.1.0-inplace" 'False) (C1 ('MetaCons "Revision" 'PrefixI 'True) (S1 ('MetaSel ('Just "time") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Time) :*: (S1 ('MetaSel ('Just "user") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "number") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))))

data Versions Source #

Constructors

Versions 

Fields

Instances

Instances details
Eq Versions Source # 
Instance details

Defined in Distribution.Hackage.Types

Show Versions Source # 
Instance details

Defined in Distribution.Hackage.Types

Generic Versions Source # 
Instance details

Defined in Distribution.Hackage.Types

Associated Types

type Rep Versions :: Type -> Type #

Methods

from :: Versions -> Rep Versions x #

to :: Rep Versions x -> Versions #

FromJSON Versions Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Versions Source # 
Instance details

Defined in Distribution.Hackage.Types

type Rep Versions = D1 ('MetaData "Versions" "Distribution.Hackage.Types" "hackage-api-0.1.0-inplace" 'False) (C1 ('MetaCons "Versions" 'PrefixI 'True) (S1 ('MetaSel ('Just "normal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Text]) :*: (S1 ('MetaSel ('Just "unpreferred") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Text]) :*: S1 ('MetaSel ('Just "deprecated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Text]))))

data CabalFile Source #

Instances

Instances details
HasClient m api => HasClient m (CabalFile :> api) Source # 
Instance details

Defined in Distribution.Hackage.Types

Associated Types

type Client m (CabalFile :> api) #

Methods

clientWithRoute :: Proxy m -> Proxy (CabalFile :> api) -> Request -> Client m (CabalFile :> api) #

hoistClientMonad :: Proxy m -> Proxy (CabalFile :> api) -> (forall x. mon x -> mon' x) -> Client mon (CabalFile :> api) -> Client mon' (CabalFile :> api) #

type Client m (CabalFile :> api) Source # 
Instance details

Defined in Distribution.Hackage.Types

type Client m (CabalFile :> api) = Package -> Client m api

type GetPackages = "packages" :> Get '[JSON0] [Package] Source #

type GetVersions = "package" :> (Capture "package" Package :> ("preferred" :> Get '[JSON0] Versions)) Source #

type GetRevisions = "package" :> (Capture "package" Package :> ("revisions" :> Get '[JSON0] [Revision])) Source #

type GetCabalFile' = "package" :> (Capture "package" Package :> ("revision" :> (Capture "revision" Int :> Get '[Cabal] GenericPackageDescription))) Source #