drone-1.1.0

Safe HaskellNone
LanguageHaskell2010

Drone.Client.Path

Synopsis

Documentation

type XPaths r = Record '["pathSelf" >: Format r r, "pathFeed" >: Format r r, "pathRepos" >: Format r r, "pathRepo" >: Format r (Text -> Text -> r), "pathRepoMove" >: Format r (Text -> Text -> r), "pathChown" >: Format r (Text -> Text -> r), "pathRepair" >: Format r (Text -> Text -> r), "pathBuilds" >: Format r (Text -> Text -> r), "pathBuild" >: Format r (Text -> Text -> Text -> r), "pathApprove" >: Format r (Text -> Text -> Int -> Int -> r), "pathDecline" >: Format r (Text -> Text -> Int -> Int -> r), "pathPromote" >: Format r (Text -> Text -> Int -> r), "pathRollback" >: Format r (Text -> Text -> Int -> r), "pathJob" >: Format r (Text -> Text -> Int -> Int -> r), "pathLog" >: Format r (Text -> Text -> Int -> Int -> Int -> r), "pathRepoSecrets" >: Format r (Text -> Text -> r), "pathRepoSecret" >: Format r (Text -> Text -> Text -> r), "pathRepoRegistries" >: Format r (Text -> Text -> r), "pathRepoRegistry" >: Format r (Text -> Text -> Text -> r), "pathEncryptSecret" >: Format r (Text -> Text -> r), "pathEncryptRegistry" >: Format r (Text -> Text -> r), "pathSign" >: Format r (Text -> Text -> r), "pathVerify" >: Format r (Text -> Text -> r), "pathCrons" >: Format r (Text -> Text -> r), "pathCron" >: Format r (Text -> Text -> Text -> r), "pathUsers" >: Format r r, "pathUser" >: Format r (Text -> r), "pathQueue" >: Format r r, "pathServers" >: Format r r, "pathServer" >: Format r (Text -> r), "pathScalerPause" >: Format r r, "pathScalerResume" >: Format r r, "pathNodes" >: Format r r, "pathNode" >: Format r (Text -> r), "pathVersion" >: Format r r] Source #

format :: Path a -> a Source #

data Format r a #

A formatter. When you construct formatters the first type parameter, r, will remain polymorphic. The second type parameter, a, will change to reflect the types of the data that will be formatted. For example, in

myFormat :: Formatter r (Text -> Int -> r)
myFormat = "Person's name is " % text % ", age is " % hex

the first type parameter remains polymorphic, and the second type parameter is Text -> Int -> r, which indicates that it formats a Text and an Int.

When you run the Format, for example with format, you provide the arguments and they will be formatted into a string.

> format ("Person's name is " % text % ", age is " % hex) "Dave" 54
"Person's name is Dave, age is 36"
Instances
Functor (Format r)

Not particularly useful, but could be.

Instance details

Defined in Formatting.Internal

Methods

fmap :: (a -> b) -> Format r a -> Format r b #

(<$) :: a -> Format r b -> Format r a #

Category Format

The same as (%). At present using Category has an import overhead, but one day it might be imported as standard.

Instance details

Defined in Formatting.Internal

Methods

id :: Format a a #

(.) :: Format b c -> Format a b -> Format a c #

a ~ r => IsString (Format r a)

Useful instance for writing format string. With this you can write Foo instead of now "Foo!".

Instance details

Defined in Formatting.Internal

Methods

fromString :: String -> Format r a #

Semigroup (Format r (a -> r)) 
Instance details

Defined in Formatting.Internal

Methods

(<>) :: Format r (a -> r) -> Format r (a -> r) -> Format r (a -> r) #

sconcat :: NonEmpty (Format r (a -> r)) -> Format r (a -> r) #

stimes :: Integral b => b -> Format r (a -> r) -> Format r (a -> r) #

Monoid (Format r (a -> r))

Useful instance for applying two formatters to the same input argument. For example: format (year <> "/" % month) now will yield "2015/01".

Instance details

Defined in Formatting.Internal

Methods

mempty :: Format r (a -> r) #

mappend :: Format r (a -> r) -> Format r (a -> r) -> Format r (a -> r) #

mconcat :: [Format r (a -> r)] -> Format r (a -> r) #