Default schema for binary data (any sequence of octets).
Moduleswagger2-2.8.9Haskell2010
Data.Swagger.Internal.ParamSchema
- 1 type
- 3 classes
- 6 values
- Packageswagger2-2.8.9
- Exports11
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceParamSchema.hs
Default schema for binary data (base64 encoded).
Default schema for password string.
"password" format is used to hint UIs the input needs to be obscured.
Convert a type into a plain ParamSchema.
An example type and instance:
{-# LANGUAGE OverloadedStrings #-} -- allows to write Text literals
import Control.Lens
data Direction = Up | Down
instance ToParamSchema Direction where
toParamSchema _ = mempty
& type_ ?~ SwaggerString
& enum_ ?~ [ "Up", "Down" ]
Instead of manually writing your ToParamSchema instance you can
use a default generic implementation of toParamSchema.
To do that, simply add deriving Generic clause to your datatype
and declare a ToParamSchema instance for your datatype without
giving definition for toParamSchema.
For instance, the previous example can be simplified into this:
{-# LANGUAGE DeriveGeneric #-}
import GHC.Generics (Generic)
data Direction = Up | Down deriving Generic
instance ToParamSchema Direction
Methods
toParamSchema :: Proxy a -> ParamSchema tConvert a type into a plain parameter schema.
Example1 expression encode $ toParamSchema (Proxy :: Proxy Integer)"{\"type\":\"integer\"}"
Instances48ToParamSchema, …
ToParamSchema SetCookieDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema IntegerDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema NaturalDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema StringDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema AllDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema AnyDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema VersionDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Int16Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Int32Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Int64Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Int8Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Word16Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Word32Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Word64Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema Word8Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema BoolDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema CharDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema DoubleDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema FloatDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema IntDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema WordDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema ScientificDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema TextDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema TextDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema DayDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaFormat
"date"corresponds toyyyy-mm-ddformat.ToParamSchema NominalDiffTimeDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema UTCTimeDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaExample1 expression toParamSchema (Proxy :: Proxy UTCTime) ^. formatJust "yyyy-mm-ddThh:MM:ssZ"
ToParamSchema LocalTimeDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaExample1 expression toParamSchema (Proxy :: Proxy LocalTime) ^. formatJust "yyyy-mm-ddThh:MM:ss"
ToParamSchema TimeOfDayDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaExample1 expression toParamSchema (Proxy :: Proxy TimeOfDay) ^. formatJust "hh:MM:ss"
ToParamSchema ZonedTimeDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaExample1 expression toParamSchema (Proxy :: Proxy ZonedTime) ^. formatJust "yyyy-mm-ddThh:MM:ss+hhMM"
ToParamSchema UUIDDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema ()Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaExample1 expression encode $ toParamSchema (Proxy :: Proxy ())"{\"enum\":[\"_\"],\"type\":\"string\"}"
ToParamSchemaByteStringError ByteString => ToParamSchema ByteStringDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchemaByteStringError ByteString => ToParamSchema ByteStringDefined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Set a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Identity a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (First a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Last a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Dual a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Product a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Sum a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (HashSet a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Vector a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Vector a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Vector a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema (Vector a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema a => ToParamSchema [a]Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaHasResolution a => ToParamSchema (Fixed a)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchema
Equations
ToParamSchemaByteStringError bs = TypeError (((('Text"Impossible to have an instance "
':<>: 'ShowType (ToParamSchema bs)) ':<>: 'Text"."
) ':$$: (('Text"Please, use a newtype wrapper around "
':<>: 'ShowType bs) ':<>: 'Text" instead."
)) ':$$: 'Text"Consider using byteParamSchema or binaryParamSchema templates."
)
A configurable generic ParamSchema creator.
:set -XDeriveGenericdata Color = Red | Blue deriving Genericencode $ genericToParamSchema defaultSchemaOptions (Proxy :: Proxy Color)"{\"enum\":[\"Red\",\"Blue\"],\"type\":\"string\"}"
Methods
gtoParamSchema :: SchemaOptions -> Proxy f -> ParamSchema t -> ParamSchema t
Instances5GToParamSchema
Constructor c => GToParamSchema (C1 c U1)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaGToParamSchema f => GToParamSchema (C1 c (S1 s f))Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaGToParamSchema f => GToParamSchema (D1 d f)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchemaToParamSchema c => GToParamSchema (K1 i c)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchema(GEnumParamSchema f, GEnumParamSchema g) => GToParamSchema (f :+: g)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchema
Methods
genumParamSchema :: SchemaOptions -> Proxy f -> ParamSchema t -> ParamSchema t
Instances2GEnumParamSchema
Constructor c => GEnumParamSchema (C1 c U1)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchema(GEnumParamSchema f, GEnumParamSchema g) => GEnumParamSchema (f :+: g)Defined in swagger2-2.8.9 · Data.Swagger.Internal.ParamSchema
import Data.Aeson (encode)