-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Auto-generated API bindings for httpstan
--
-- Please see README.md
@package httpstan
@version 0.3.0.0
module Httpstan.Types
data CreateFitRequest
CreateFitRequest :: Maybe Int -> Maybe Value -> Maybe Double -> Text -> Maybe Double -> Maybe Value -> Maybe Int -> Maybe Double -> Maybe Double -> Maybe Int -> Maybe Int -> Maybe Int -> Maybe Int -> Maybe Int -> Maybe Int -> Maybe Bool -> Maybe Double -> Maybe Double -> Maybe Double -> Maybe Int -> Maybe Int -> CreateFitRequest
[createFitRequestChain] :: CreateFitRequest -> Maybe Int
[createFitRequestData] :: CreateFitRequest -> Maybe Value
[createFitRequestDelta] :: CreateFitRequest -> Maybe Double
[createFitRequestFunction] :: CreateFitRequest -> Text
[createFitRequestGamma] :: CreateFitRequest -> Maybe Double
[createFitRequestInit] :: CreateFitRequest -> Maybe Value
[createFitRequestInitUnderscorebuffer] :: CreateFitRequest -> Maybe Int
[createFitRequestInitUnderscoreradius] :: CreateFitRequest -> Maybe Double
[createFitRequestKappa] :: CreateFitRequest -> Maybe Double
[createFitRequestMaxUnderscoredepth] :: CreateFitRequest -> Maybe Int
[createFitRequestNumUnderscoresamples] :: CreateFitRequest -> Maybe Int
[createFitRequestNumUnderscorethin] :: CreateFitRequest -> Maybe Int
[createFitRequestNumUnderscorewarmup] :: CreateFitRequest -> Maybe Int
[createFitRequestRandomUnderscoreseed] :: CreateFitRequest -> Maybe Int
[createFitRequestRefresh] :: CreateFitRequest -> Maybe Int
[createFitRequestSaveUnderscorewarmup] :: CreateFitRequest -> Maybe Bool
[createFitRequestStepsize] :: CreateFitRequest -> Maybe Double
[createFitRequestStepsizeUnderscorejitter] :: CreateFitRequest -> Maybe Double
[createFitRequestT0] :: CreateFitRequest -> Maybe Double
[createFitRequestTermUnderscorebuffer] :: CreateFitRequest -> Maybe Int
[createFitRequestWindow] :: CreateFitRequest -> Maybe Int
data CreateModelRequest
CreateModelRequest :: Text -> CreateModelRequest
[createModelRequestProgramUnderscorecode] :: CreateModelRequest -> Text
data Fit
Fit :: Text -> Fit
[fitName] :: Fit -> Text
data Model
Model :: Text -> Text -> Text -> Model
[modelCompilerUnderscoreoutput] :: Model -> Text
[modelName] :: Model -> Text
[modelStancUnderscorewarnings] :: Model -> Text
data Operation
Operation :: Bool -> Maybe Value -> Text -> Maybe Value -> Operation
[operationDone] :: Operation -> Bool
[operationMetadata] :: Operation -> Maybe Value
[operationName] :: Operation -> Text
[operationResult] :: Operation -> Maybe Value
data Parameter
Parameter :: [Text] -> [Int] -> Text -> Parameter
[parameterConstrainedUnderscorenames] :: Parameter -> [Text]
[parameterDims] :: Parameter -> [Int]
[parameterName] :: Parameter -> Text
data Status
Status :: Int -> Maybe [Value] -> Text -> Text -> Status
[statusCode] :: Status -> Int
[statusDetails] :: Status -> Maybe [Value]
[statusMessage] :: Status -> Text
[statusStatus] :: Status -> Text
data V1ModelsGet200Response
V1ModelsGet200Response :: Maybe [Model] -> V1ModelsGet200Response
[v1ModelsGet200ResponseModels] :: V1ModelsGet200Response -> Maybe [Model]
data V1ModelsModelIdLogProbGradPost200Response
V1ModelsModelIdLogProbGradPost200Response :: Maybe [Double] -> V1ModelsModelIdLogProbGradPost200Response
[v1ModelsModelIdLogProbGradPost200ResponseGradUnderscorelogUnderscoreprob] :: V1ModelsModelIdLogProbGradPost200Response -> Maybe [Double]
data V1ModelsModelIdLogProbPost200Response
V1ModelsModelIdLogProbPost200Response :: Maybe Double -> V1ModelsModelIdLogProbPost200Response
[v1ModelsModelIdLogProbPost200ResponseLogUnderscoreprob] :: V1ModelsModelIdLogProbPost200Response -> Maybe Double
data V1ModelsModelIdParamsPost200Response
V1ModelsModelIdParamsPost200Response :: Maybe Text -> Maybe [Parameter] -> V1ModelsModelIdParamsPost200Response
[v1ModelsModelIdParamsPost200ResponseId] :: V1ModelsModelIdParamsPost200Response -> Maybe Text
[v1ModelsModelIdParamsPost200ResponseParams] :: V1ModelsModelIdParamsPost200Response -> Maybe [Parameter]
data V1ModelsModelIdTransformInitsPost200Response
V1ModelsModelIdTransformInitsPost200Response :: Maybe [Double] -> V1ModelsModelIdTransformInitsPost200Response
[v1ModelsModelIdTransformInitsPost200ResponseParamsUnderscorerUnderscoreunconstrained] :: V1ModelsModelIdTransformInitsPost200Response -> Maybe [Double]
data V1ModelsModelIdWriteArrayPost200Response
V1ModelsModelIdWriteArrayPost200Response :: Maybe [Double] -> V1ModelsModelIdWriteArrayPost200Response
[v1ModelsModelIdWriteArrayPost200ResponseParamsUnderscorerUnderscoreconstrained] :: V1ModelsModelIdWriteArrayPost200Response -> Maybe [Double]
instance Data.Data.Data Httpstan.Types.CreateFitRequest
instance GHC.Generics.Generic Httpstan.Types.CreateFitRequest
instance GHC.Classes.Eq Httpstan.Types.CreateFitRequest
instance GHC.Show.Show Httpstan.Types.CreateFitRequest
instance Data.Data.Data Httpstan.Types.CreateModelRequest
instance GHC.Generics.Generic Httpstan.Types.CreateModelRequest
instance GHC.Classes.Eq Httpstan.Types.CreateModelRequest
instance GHC.Show.Show Httpstan.Types.CreateModelRequest
instance Data.Data.Data Httpstan.Types.Fit
instance GHC.Generics.Generic Httpstan.Types.Fit
instance GHC.Classes.Eq Httpstan.Types.Fit
instance GHC.Show.Show Httpstan.Types.Fit
instance Data.Data.Data Httpstan.Types.Model
instance GHC.Generics.Generic Httpstan.Types.Model
instance GHC.Classes.Eq Httpstan.Types.Model
instance GHC.Show.Show Httpstan.Types.Model
instance Data.Data.Data Httpstan.Types.Operation
instance GHC.Generics.Generic Httpstan.Types.Operation
instance GHC.Classes.Eq Httpstan.Types.Operation
instance GHC.Show.Show Httpstan.Types.Operation
instance Data.Data.Data Httpstan.Types.Parameter
instance GHC.Generics.Generic Httpstan.Types.Parameter
instance GHC.Classes.Eq Httpstan.Types.Parameter
instance GHC.Show.Show Httpstan.Types.Parameter
instance Data.Data.Data Httpstan.Types.Status
instance GHC.Generics.Generic Httpstan.Types.Status
instance GHC.Classes.Eq Httpstan.Types.Status
instance GHC.Show.Show Httpstan.Types.Status
instance Data.Data.Data Httpstan.Types.V1ModelsGet200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsGet200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsGet200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsGet200Response
instance Data.Data.Data Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance Data.Data.Data Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance Data.Data.Data Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance Data.Data.Data Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance Data.Data.Data Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance GHC.Generics.Generic Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance GHC.Classes.Eq Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance GHC.Show.Show Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsModelIdWriteArrayPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsModelIdTransformInitsPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsModelIdParamsPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsModelIdLogProbPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsModelIdLogProbGradPost200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.V1ModelsGet200Response
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.V1ModelsGet200Response
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.Status
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.Status
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.Parameter
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.Parameter
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.Operation
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.Operation
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.Model
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.Model
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.Fit
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.Fit
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.CreateModelRequest
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.CreateModelRequest
instance Data.Aeson.Types.FromJSON.FromJSON Httpstan.Types.CreateFitRequest
instance Data.Aeson.Types.ToJSON.ToJSON Httpstan.Types.CreateFitRequest
module Httpstan.API
-- | Server or client configuration, specifying the host and port to query
-- or serve on.
data Config
Config :: String -> Config
-- | scheme:/hostname:portpath, e.g. "http://localhost:8080/"
[configUrl] :: Config -> String
-- | Configuration, specifying the full url of the service.
--
-- Backend for Httpstan. The backend can be used both for the client and
-- the server. The client generated from the Httpstan OpenAPI spec is a
-- backend that executes actions by sending HTTP requests (see
-- createHttpstanClient). Alternatively, provided a backend, the
-- API can be served using runHttpstanMiddlewareServer.
data HttpstanBackend m
HttpstanBackend :: m NoContent -> m V1ModelsGet200Response -> (Text -> m NoContent) -> (Text -> Text -> m NoContent) -> (Text -> Text -> m NoContent) -> (Text -> CreateFitRequest -> m Fit) -> (Text -> Bool -> m V1ModelsModelIdLogProbGradPost200Response) -> (Text -> Bool -> m V1ModelsModelIdLogProbPost200Response) -> (Text -> Value -> m V1ModelsModelIdParamsPost200Response) -> (Text -> Value -> m V1ModelsModelIdTransformInitsPost200Response) -> (Text -> Bool -> m V1ModelsModelIdWriteArrayPost200Response) -> (CreateModelRequest -> m Model) -> (Text -> m Operation) -> HttpstanBackend m
-- | Check if service is running.
[v1HealthGet] :: HttpstanBackend m -> m NoContent
-- | List cached models.
[v1ModelsGet] :: HttpstanBackend m -> m V1ModelsGet200Response
-- | Delete a model which has been saved in the cache.
[v1ModelsModelIdDelete] :: HttpstanBackend m -> Text -> m NoContent
-- | Delete a fit which has been saved in the cache.
[v1ModelsModelIdFitsFitIdDelete] :: HttpstanBackend m -> Text -> Text -> m NoContent
-- | Result (draws, logger messages) from calling a function defined in
-- stan::services.
[v1ModelsModelIdFitsFitIdGet] :: HttpstanBackend m -> Text -> Text -> m NoContent
-- | A request to this endpoint starts a long-running operation. Users can
-- retrieve information about the status of the operation by making a GET
-- request to the operations resource endpoint. When the operation is
-- done, the "fit" may be downloaded. (A "fit" collects all
-- logger and writer messages from Stan.) `function` indicates
-- the name of the ``stan::services function`` which should be called
-- given the Stan model associated with the id `model_id`. For
-- example, if sampling using
-- ``stan::services::sample::hmc_nuts_diag_e_adapt`` then
-- `function` is the full function name
-- ``stan::services::sample::hmc_nuts_diag_e_adapt``. Sampler parameters
-- which are not supplied will be given default values taken from
-- CmdStan. For example, if
-- ``stan::services::sample::hmc_nuts_diag_e_adapt`` is the function
-- called and the parameter `num_samples` is not specified, the
-- value 1000 will be used. For a full list of default values consult the
-- CmdStan documentation.
[v1ModelsModelIdFitsPost] :: HttpstanBackend m -> Text -> CreateFitRequest -> m Fit
-- | Returns the output of Stan C++ `stan::model::log_prob_grad`.
[v1ModelsModelIdLogProbGradPost] :: HttpstanBackend m -> Text -> Bool -> m V1ModelsModelIdLogProbGradPost200Response
-- | Returns the output of Stan C++ `log_prob` model class method.
[v1ModelsModelIdLogProbPost] :: HttpstanBackend m -> Text -> Bool -> m V1ModelsModelIdLogProbPost200Response
-- | Returns the output of Stan C++ model class methods:
-- `constrained_param_names`, `get_param_names` and
-- `get_dims`.
[v1ModelsModelIdParamsPost] :: HttpstanBackend m -> Text -> Value -> m V1ModelsModelIdParamsPost200Response
-- | Returns the output of Stan C++ `transform_inits` model class
-- method.
[v1ModelsModelIdTransformInitsPost] :: HttpstanBackend m -> Text -> Value -> m V1ModelsModelIdTransformInitsPost200Response
-- | Returns the output of Stan C++ `write_array` model class
-- method.
[v1ModelsModelIdWriteArrayPost] :: HttpstanBackend m -> Text -> Bool -> m V1ModelsModelIdWriteArrayPost200Response
-- | Compile a Stan model
[v1ModelsPost] :: HttpstanBackend m -> CreateModelRequest -> m Model
-- | Return Operation details. Details about an Operation include whether
-- or not the operation is done and information about the
-- progress of sampling.
[v1OperationsOperationIdGet] :: HttpstanBackend m -> Text -> m Operation
createHttpstanClient :: HttpstanBackend HttpstanClient
-- | Run the Httpstan server at the provided host and port.
runHttpstanServer :: (MonadIO m, MonadThrow m) => Config -> HttpstanBackend (ExceptT ServerError IO) -> m ()
-- | Run the Httpstan server at the provided host and port.
runHttpstanMiddlewareServer :: (MonadIO m, MonadThrow m) => Config -> Middleware -> HttpstanBackend (ExceptT ServerError IO) -> m ()
-- | Run requests in the HttpstanClient monad.
runHttpstanClient :: Config -> HttpstanClient a -> ExceptT ClientError IO a
-- | Run requests in the HttpstanClient monad using a custom manager.
runHttpstanClientWithManager :: Manager -> Config -> HttpstanClient a -> ExceptT ClientError IO a
-- | Like runClient, but returns the response or throws a
-- HttpstanClientError
callHttpstan :: (MonadIO m, MonadThrow m) => ClientEnv -> HttpstanClient a -> m a
data HttpstanClient a
-- | Custom exception type for our errors.
newtype HttpstanClientError
HttpstanClientError :: ClientError -> HttpstanClientError
-- | Servant type-level API, generated from the OpenAPI spec for Httpstan.
type HttpstanAPI = "v1" :> "health" :> Verb 'GET 200 '[JSON] NoContent :<|> "v1" :> "models" :> Verb 'GET 200 '[JSON] V1ModelsGet200Response :<|> "v1" :> "models" :> Capture "model_id" Text :> Verb 'DELETE 200 '[JSON] NoContent :<|> "v1" :> "models" :> Capture "model_id" Text :> "fits" :> Capture "fit_id" Text :> Verb 'DELETE 200 '[JSON] NoContent :<|> "v1" :> "models" :> Capture "model_id" Text :> "fits" :> Capture "fit_id" Text :> Verb 'GET 200 '[JSON] NoContent :<|> "v1" :> "models" :> Capture "model_id" Text :> "fits" :> ReqBody '[JSON] CreateFitRequest :> Verb 'POST 201 '[JSON] Fit :<|> "v1" :> "models" :> Capture "model_id" Text :> "log_prob_grad" :> ReqBody '[JSON] Bool :> Verb 'POST 200 '[JSON] V1ModelsModelIdLogProbGradPost200Response :<|> "v1" :> "models" :> Capture "model_id" Text :> "log_prob" :> ReqBody '[JSON] Bool :> Verb 'POST 200 '[JSON] V1ModelsModelIdLogProbPost200Response :<|> "v1" :> "models" :> Capture "model_id" Text :> "params" :> ReqBody '[JSON] Value :> Verb 'POST 200 '[JSON] V1ModelsModelIdParamsPost200Response :<|> "v1" :> "models" :> Capture "model_id" Text :> "transform_inits" :> ReqBody '[JSON] Value :> Verb 'POST 200 '[JSON] V1ModelsModelIdTransformInitsPost200Response :<|> "v1" :> "models" :> Capture "model_id" Text :> "write_array" :> ReqBody '[JSON] Bool :> Verb 'POST 200 '[JSON] V1ModelsModelIdWriteArrayPost200Response :<|> "v1" :> "models" :> ReqBody '[JSON] CreateModelRequest :> Verb 'POST 201 '[JSON] Model :<|> "v1" :> "operations" :> Capture "operation_id" Text :> Verb 'GET 200 '[JSON] Operation :<|> Raw
-- | Plain Network.Wai Application for the Httpstan server.
--
-- Can be used to implement e.g. tests that call the API without a full
-- webserver.
serverWaiApplicationHttpstan :: HttpstanBackend (ExceptT ServerError IO) -> Application
instance Data.Traversable.Traversable (Httpstan.API.QueryList p)
instance Data.Foldable.Foldable (Httpstan.API.QueryList p)
instance GHC.Base.Monad (Httpstan.API.QueryList p)
instance GHC.Base.Applicative (Httpstan.API.QueryList p)
instance GHC.Base.Functor (Httpstan.API.QueryList p)
instance GHC.Read.Read Httpstan.API.Config
instance GHC.Show.Show Httpstan.API.Config
instance GHC.Classes.Ord Httpstan.API.Config
instance GHC.Classes.Eq Httpstan.API.Config
instance GHC.Exception.Type.Exception Httpstan.API.HttpstanClientError
instance GHC.Show.Show Httpstan.API.HttpstanClientError
instance GHC.Base.Functor Httpstan.API.HttpstanClient
instance GHC.Base.Applicative Httpstan.API.HttpstanClient
instance GHC.Base.Monad Httpstan.API.HttpstanClient
instance Control.Monad.IO.Class.MonadIO Httpstan.API.HttpstanClient
instance Web.Internal.HttpApiData.FromHttpApiData a => Web.Internal.HttpApiData.FromHttpApiData (Httpstan.API.QueryList 'Httpstan.API.CommaSeparated a)
instance Web.Internal.HttpApiData.FromHttpApiData a => Web.Internal.HttpApiData.FromHttpApiData (Httpstan.API.QueryList 'Httpstan.API.TabSeparated a)
instance Web.Internal.HttpApiData.FromHttpApiData a => Web.Internal.HttpApiData.FromHttpApiData (Httpstan.API.QueryList 'Httpstan.API.SpaceSeparated a)
instance Web.Internal.HttpApiData.FromHttpApiData a => Web.Internal.HttpApiData.FromHttpApiData (Httpstan.API.QueryList 'Httpstan.API.PipeSeparated a)
instance Web.Internal.HttpApiData.FromHttpApiData a => Web.Internal.HttpApiData.FromHttpApiData (Httpstan.API.QueryList 'Httpstan.API.MultiParamArray a)
instance Web.Internal.HttpApiData.ToHttpApiData a => Web.Internal.HttpApiData.ToHttpApiData (Httpstan.API.QueryList 'Httpstan.API.CommaSeparated a)
instance Web.Internal.HttpApiData.ToHttpApiData a => Web.Internal.HttpApiData.ToHttpApiData (Httpstan.API.QueryList 'Httpstan.API.TabSeparated a)
instance Web.Internal.HttpApiData.ToHttpApiData a => Web.Internal.HttpApiData.ToHttpApiData (Httpstan.API.QueryList 'Httpstan.API.SpaceSeparated a)
instance Web.Internal.HttpApiData.ToHttpApiData a => Web.Internal.HttpApiData.ToHttpApiData (Httpstan.API.QueryList 'Httpstan.API.PipeSeparated a)
instance Web.Internal.HttpApiData.ToHttpApiData a => Web.Internal.HttpApiData.ToHttpApiData (Httpstan.API.QueryList 'Httpstan.API.MultiParamArray a)