hercules-ci-api-agent-0.3.1.0: API definition for Hercules CI Agent to talk to hercules-ci.com or Hercules CI Enterprise
Safe HaskellNone
LanguageHaskell2010

Hercules.API.Agent.Socket.Frame

Synopsis

Documentation

data Frame o a Source #

Adds serial number n to payloads p and allows acknowledgement for a related stream that travels in the opposite direction.

Constructors

Msg

Message

Fields

Oob

Out of band message: not redelivered, not acknowledged.

Fields

  • o :: o
     
Ack

Acknowledgement

Fields

Exception

Exception

Fields

Instances

Instances details
(Eq a, Eq o) => Eq (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Methods

(==) :: Frame o a -> Frame o a -> Bool #

(/=) :: Frame o a -> Frame o a -> Bool #

(Show a, Show o) => Show (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Methods

showsPrec :: Int -> Frame o a -> ShowS #

show :: Frame o a -> String #

showList :: [Frame o a] -> ShowS #

Generic (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Associated Types

type Rep (Frame o a) :: Type -> Type #

Methods

from :: Frame o a -> Rep (Frame o a) x #

to :: Rep (Frame o a) x -> Frame o a #

(ToJSON o, ToJSON a) => ToJSON (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Methods

toJSON :: Frame o a -> Value #

toEncoding :: Frame o a -> Encoding #

toJSONList :: [Frame o a] -> Value #

toEncodingList :: [Frame o a] -> Encoding #

(FromJSON a, FromJSON o) => FromJSON (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Methods

parseJSON :: Value -> Parser (Frame o a) #

parseJSONList :: Value -> Parser [Frame o a] #

(NFData a, NFData o) => NFData (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

Methods

rnf :: Frame o a -> () #

type Rep (Frame o a) Source # 
Instance details

Defined in Hercules.API.Agent.Socket.Frame

type Rep (Frame o a) = D1 ('MetaData "Frame" "Hercules.API.Agent.Socket.Frame" "hercules-ci-api-agent-0.3.1.0-IicB1RofPhcH2cz504NZJe" 'False) ((C1 ('MetaCons "Msg" 'PrefixI 'True) (S1 ('MetaSel ('Just "n") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer) :*: S1 ('MetaSel ('Just "p") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Oob" 'PrefixI 'True) (S1 ('MetaSel ('Just "o") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 o))) :+: (C1 ('MetaCons "Ack" 'PrefixI 'True) (S1 ('MetaSel ('Just "n") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)) :+: C1 ('MetaCons "Exception" 'PrefixI 'True) (S1 ('MetaSel ('Just "message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))))

mapOob :: (a -> b) -> Frame a c -> Frame b c Source #