-- 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)