Copyright | Plow Technologies 2017 |
---|---|
License | BSD3 |
Maintainer | mchaver@gmail.com |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- mkOCamlSpecServer :: forall ocamlPackage. OCamlPackageTypeCount ocamlPackage => String -> Proxy ocamlPackage -> Q [Dec]
- type family MkOCamlSpecAPI a :: * where ...
- mkGoldenFiles :: HasMkGoldenFiles a => Proxy a -> Int -> FilePath -> IO ()
- runGoldenSpec :: HasRunGoldenSpec a => Proxy a -> Int -> FilePath -> Spec
- type OCamlSpecAPI (modules :: [Symbol]) (subModules :: [Symbol]) typ (mType :: Maybe Symbol) = ConcatSymbols (Insert mType (TypeName typ) (Append modules subModules)) (ReqBody '[JSON] [typ] :> Post '[JSON] [typ])
- class OCamlPackageTypeCount modules where
- ocamlPackageTypeCount :: Proxy modules -> [Int]
- class OCamlModuleTypeCount api where
- ocamlModuleTypeCount :: Proxy api -> Int
Documentation
mkOCamlSpecServer :: forall ocamlPackage. OCamlPackageTypeCount ocamlPackage => String -> Proxy ocamlPackage -> Q [Dec] Source #
type family MkOCamlSpecAPI a :: * where ... Source #
Convert an OCamlPackage into a servant API.
MkOCamlSpecAPI (OCamlPackage a deps :> rest) = MkOCamlSpecAPI rest | |
MkOCamlSpecAPI ((OCamlModule modules :> api) :<|> rest) = MkOCamlSpecAPI' modules '[] api :<|> MkOCamlSpecAPI rest | |
MkOCamlSpecAPI (OCamlModule modules :> api) = MkOCamlSpecAPI' modules '[] api |
type OCamlSpecAPI (modules :: [Symbol]) (subModules :: [Symbol]) typ (mType :: Maybe Symbol) = ConcatSymbols (Insert mType (TypeName typ) (Append modules subModules)) (ReqBody '[JSON] [typ] :> Post '[JSON] [typ]) Source #
A servant route for a testing an OCaml type's encoder and decoder
class OCamlPackageTypeCount modules where Source #
ocamlPackageTypeCount :: Proxy modules -> [Int] Source #
Instances
(OCamlPackageTypeCountFlag a ~ flag, OCamlPackageTypeCount' flag a) => OCamlPackageTypeCount (a :: Type) Source # | |
Defined in OCaml.BuckleScript.Internal.Spec ocamlPackageTypeCount :: Proxy a -> [Int] Source # |
class OCamlModuleTypeCount api where Source #
ocamlModuleTypeCount :: Proxy api -> Int Source #
Instances
(OCamlModuleTypeCountFlag a ~ flag, OCamlModuleTypeCount' flag a) => OCamlModuleTypeCount (a :: Type) Source # | |
Defined in OCaml.BuckleScript.Internal.Spec ocamlModuleTypeCount :: Proxy a -> Int Source # |