httpstan-0.2.0.0: lib/Httpstan/Model.hs
{-
httpstan
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
OpenAPI Version: 3.0.1
httpstan API version: 4.10.0
Generated by OpenAPI Generator (https://openapi-generator.tech)
-}
{-|
Module : Httpstan.Model
-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveFoldable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveTraversable #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TupleSections #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-matches -fno-warn-unused-binds -fno-warn-unused-imports #-}
module Httpstan.Model where
import Httpstan.Core
import Httpstan.MimeTypes
import Data.Aeson ((.:),(.:!),(.:?),(.=))
import qualified Control.Arrow as P (left)
import qualified Data.Aeson as A
import qualified Data.ByteString as B
import qualified Data.ByteString.Base64 as B64
import qualified Data.ByteString.Char8 as BC
import qualified Data.ByteString.Lazy as BL
import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep)
import qualified Data.Foldable as P
import qualified Data.HashMap.Lazy as HM
import qualified Data.Map as Map
import qualified Data.Maybe as P
import qualified Data.Set as Set
import qualified Data.Text as T
import qualified Data.Text.Encoding as T
import qualified Data.Time as TI
import qualified Lens.Micro as L
import qualified Web.FormUrlEncoded as WH
import qualified Web.HttpApiData as WH
import Control.Applicative ((<|>))
import Control.Applicative (Alternative)
import Data.Function ((&))
import Data.Monoid ((<>))
import Data.Text (Text)
import Prelude (($),(/=),(.),(<$>),(<*>),(>>=),(=<<),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
import qualified Prelude as P
-- * Parameter newtypes
-- ** AdjustTransform
newtype AdjustTransform = AdjustTransform { unAdjustTransform :: Bool } deriving (P.Eq, P.Show, A.ToJSON)
-- ** ConstrainedParameters
newtype ConstrainedParameters = ConstrainedParameters { unConstrainedParameters :: A.Value } deriving (P.Eq, P.Show, A.ToJSON)
-- ** FitId
newtype FitId = FitId { unFitId :: Text } deriving (P.Eq, P.Show)
-- ** IncludeGqs
newtype IncludeGqs = IncludeGqs { unIncludeGqs :: Bool } deriving (P.Eq, P.Show, A.ToJSON)
-- ** ModelId
newtype ModelId = ModelId { unModelId :: Text } deriving (P.Eq, P.Show)
-- ** OperationId
newtype OperationId = OperationId { unOperationId :: Text } deriving (P.Eq, P.Show)
-- ** ParamData
newtype ParamData = ParamData { unParamData :: A.Value } deriving (P.Eq, P.Show, A.ToJSON)
-- * Models
-- ** CreateFitRequest
-- | CreateFitRequest
data CreateFitRequest = CreateFitRequest
{ createFitRequestChain :: !(Maybe Int) -- ^ "chain"
, createFitRequestData :: !(Maybe A.Value) -- ^ "data"
, createFitRequestDelta :: !(Maybe Double) -- ^ "delta"
, createFitRequestFunction :: !(E'Function) -- ^ /Required/ "function"
, createFitRequestGamma :: !(Maybe Double) -- ^ "gamma"
, createFitRequestInit :: !(Maybe A.Value) -- ^ "init"
, createFitRequestInitBuffer :: !(Maybe Int) -- ^ "init_buffer"
, createFitRequestInitRadius :: !(Maybe Double) -- ^ "init_radius"
, createFitRequestKappa :: !(Maybe Double) -- ^ "kappa"
, createFitRequestMaxDepth :: !(Maybe Int) -- ^ "max_depth"
, createFitRequestNumSamples :: !(Maybe Int) -- ^ "num_samples"
, createFitRequestNumThin :: !(Maybe Int) -- ^ "num_thin"
, createFitRequestNumWarmup :: !(Maybe Int) -- ^ "num_warmup"
, createFitRequestRandomSeed :: !(Maybe Int) -- ^ "random_seed"
, createFitRequestRefresh :: !(Maybe Int) -- ^ "refresh"
, createFitRequestSaveWarmup :: !(Maybe Bool) -- ^ "save_warmup"
, createFitRequestStepsize :: !(Maybe Double) -- ^ "stepsize"
, createFitRequestStepsizeJitter :: !(Maybe Double) -- ^ "stepsize_jitter"
, createFitRequestT0 :: !(Maybe Double) -- ^ "t0"
, createFitRequestTermBuffer :: !(Maybe Int) -- ^ "term_buffer"
, createFitRequestWindow :: !(Maybe Int) -- ^ "window"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON CreateFitRequest
instance A.FromJSON CreateFitRequest where
parseJSON = A.withObject "CreateFitRequest" $ \o ->
CreateFitRequest
<$> (o .:? "chain")
<*> (o .:? "data")
<*> (o .:? "delta")
<*> (o .: "function")
<*> (o .:? "gamma")
<*> (o .:? "init")
<*> (o .:? "init_buffer")
<*> (o .:? "init_radius")
<*> (o .:? "kappa")
<*> (o .:? "max_depth")
<*> (o .:? "num_samples")
<*> (o .:? "num_thin")
<*> (o .:? "num_warmup")
<*> (o .:? "random_seed")
<*> (o .:? "refresh")
<*> (o .:? "save_warmup")
<*> (o .:? "stepsize")
<*> (o .:? "stepsize_jitter")
<*> (o .:? "t0")
<*> (o .:? "term_buffer")
<*> (o .:? "window")
-- | ToJSON CreateFitRequest
instance A.ToJSON CreateFitRequest where
toJSON CreateFitRequest {..} =
_omitNulls
[ "chain" .= createFitRequestChain
, "data" .= createFitRequestData
, "delta" .= createFitRequestDelta
, "function" .= createFitRequestFunction
, "gamma" .= createFitRequestGamma
, "init" .= createFitRequestInit
, "init_buffer" .= createFitRequestInitBuffer
, "init_radius" .= createFitRequestInitRadius
, "kappa" .= createFitRequestKappa
, "max_depth" .= createFitRequestMaxDepth
, "num_samples" .= createFitRequestNumSamples
, "num_thin" .= createFitRequestNumThin
, "num_warmup" .= createFitRequestNumWarmup
, "random_seed" .= createFitRequestRandomSeed
, "refresh" .= createFitRequestRefresh
, "save_warmup" .= createFitRequestSaveWarmup
, "stepsize" .= createFitRequestStepsize
, "stepsize_jitter" .= createFitRequestStepsizeJitter
, "t0" .= createFitRequestT0
, "term_buffer" .= createFitRequestTermBuffer
, "window" .= createFitRequestWindow
]
-- | Construct a value of type 'CreateFitRequest' (by applying it's required fields, if any)
mkCreateFitRequest
:: E'Function -- ^ 'createFitRequestFunction'
-> CreateFitRequest
mkCreateFitRequest createFitRequestFunction =
CreateFitRequest
{ createFitRequestChain = Nothing
, createFitRequestData = Nothing
, createFitRequestDelta = Nothing
, createFitRequestFunction
, createFitRequestGamma = Nothing
, createFitRequestInit = Nothing
, createFitRequestInitBuffer = Nothing
, createFitRequestInitRadius = Nothing
, createFitRequestKappa = Nothing
, createFitRequestMaxDepth = Nothing
, createFitRequestNumSamples = Nothing
, createFitRequestNumThin = Nothing
, createFitRequestNumWarmup = Nothing
, createFitRequestRandomSeed = Nothing
, createFitRequestRefresh = Nothing
, createFitRequestSaveWarmup = Nothing
, createFitRequestStepsize = Nothing
, createFitRequestStepsizeJitter = Nothing
, createFitRequestT0 = Nothing
, createFitRequestTermBuffer = Nothing
, createFitRequestWindow = Nothing
}
-- ** CreateModelRequest
-- | CreateModelRequest
data CreateModelRequest = CreateModelRequest
{ createModelRequestProgramCode :: !(Text) -- ^ /Required/ "program_code"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON CreateModelRequest
instance A.FromJSON CreateModelRequest where
parseJSON = A.withObject "CreateModelRequest" $ \o ->
CreateModelRequest
<$> (o .: "program_code")
-- | ToJSON CreateModelRequest
instance A.ToJSON CreateModelRequest where
toJSON CreateModelRequest {..} =
_omitNulls
[ "program_code" .= createModelRequestProgramCode
]
-- | Construct a value of type 'CreateModelRequest' (by applying it's required fields, if any)
mkCreateModelRequest
:: Text -- ^ 'createModelRequestProgramCode'
-> CreateModelRequest
mkCreateModelRequest createModelRequestProgramCode =
CreateModelRequest
{ createModelRequestProgramCode
}
-- ** Fit
-- | Fit
data Fit = Fit
{ fitName :: !(Text) -- ^ /Required/ "name"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON Fit
instance A.FromJSON Fit where
parseJSON = A.withObject "Fit" $ \o ->
Fit
<$> (o .: "name")
-- | ToJSON Fit
instance A.ToJSON Fit where
toJSON Fit {..} =
_omitNulls
[ "name" .= fitName
]
-- | Construct a value of type 'Fit' (by applying it's required fields, if any)
mkFit
:: Text -- ^ 'fitName'
-> Fit
mkFit fitName =
Fit
{ fitName
}
-- ** Model
-- | Model
data Model = Model
{ modelCompilerOutput :: !(Text) -- ^ /Required/ "compiler_output"
, modelName :: !(Text) -- ^ /Required/ "name"
, modelStancWarnings :: !(Text) -- ^ /Required/ "stanc_warnings"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON Model
instance A.FromJSON Model where
parseJSON = A.withObject "Model" $ \o ->
Model
<$> (o .: "compiler_output")
<*> (o .: "name")
<*> (o .: "stanc_warnings")
-- | ToJSON Model
instance A.ToJSON Model where
toJSON Model {..} =
_omitNulls
[ "compiler_output" .= modelCompilerOutput
, "name" .= modelName
, "stanc_warnings" .= modelStancWarnings
]
-- | Construct a value of type 'Model' (by applying it's required fields, if any)
mkModel
:: Text -- ^ 'modelCompilerOutput'
-> Text -- ^ 'modelName'
-> Text -- ^ 'modelStancWarnings'
-> Model
mkModel modelCompilerOutput modelName modelStancWarnings =
Model
{ modelCompilerOutput
, modelName
, modelStancWarnings
}
-- ** Operation
-- | Operation
data Operation = Operation
{ operationDone :: !(Bool) -- ^ /Required/ "done"
, operationMetadata :: !(Maybe A.Value) -- ^ "metadata"
, operationName :: !(Text) -- ^ /Required/ "name"
, operationResult :: !(Maybe A.Value) -- ^ "result"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON Operation
instance A.FromJSON Operation where
parseJSON = A.withObject "Operation" $ \o ->
Operation
<$> (o .: "done")
<*> (o .:? "metadata")
<*> (o .: "name")
<*> (o .:? "result")
-- | ToJSON Operation
instance A.ToJSON Operation where
toJSON Operation {..} =
_omitNulls
[ "done" .= operationDone
, "metadata" .= operationMetadata
, "name" .= operationName
, "result" .= operationResult
]
-- | Construct a value of type 'Operation' (by applying it's required fields, if any)
mkOperation
:: Bool -- ^ 'operationDone'
-> Text -- ^ 'operationName'
-> Operation
mkOperation operationDone operationName =
Operation
{ operationDone
, operationMetadata = Nothing
, operationName
, operationResult = Nothing
}
-- ** Parameter
-- | Parameter
data Parameter = Parameter
{ parameterConstrainedNames :: !([Text]) -- ^ /Required/ "constrained_names"
, parameterDims :: !([Int]) -- ^ /Required/ "dims"
, parameterName :: !(Text) -- ^ /Required/ "name"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON Parameter
instance A.FromJSON Parameter where
parseJSON = A.withObject "Parameter" $ \o ->
Parameter
<$> (o .: "constrained_names")
<*> (o .: "dims")
<*> (o .: "name")
-- | ToJSON Parameter
instance A.ToJSON Parameter where
toJSON Parameter {..} =
_omitNulls
[ "constrained_names" .= parameterConstrainedNames
, "dims" .= parameterDims
, "name" .= parameterName
]
-- | Construct a value of type 'Parameter' (by applying it's required fields, if any)
mkParameter
:: [Text] -- ^ 'parameterConstrainedNames'
-> [Int] -- ^ 'parameterDims'
-> Text -- ^ 'parameterName'
-> Parameter
mkParameter parameterConstrainedNames parameterDims parameterName =
Parameter
{ parameterConstrainedNames
, parameterDims
, parameterName
}
-- ** Status
-- | Status
data Status = Status
{ statusCode :: !(Int) -- ^ /Required/ "code"
, statusDetails :: !(Maybe [A.Value]) -- ^ "details"
, statusMessage :: !(Text) -- ^ /Required/ "message"
, statusStatus :: !(Text) -- ^ /Required/ "status"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON Status
instance A.FromJSON Status where
parseJSON = A.withObject "Status" $ \o ->
Status
<$> (o .: "code")
<*> (o .:? "details")
<*> (o .: "message")
<*> (o .: "status")
-- | ToJSON Status
instance A.ToJSON Status where
toJSON Status {..} =
_omitNulls
[ "code" .= statusCode
, "details" .= statusDetails
, "message" .= statusMessage
, "status" .= statusStatus
]
-- | Construct a value of type 'Status' (by applying it's required fields, if any)
mkStatus
:: Int -- ^ 'statusCode'
-> Text -- ^ 'statusMessage'
-> Text -- ^ 'statusStatus'
-> Status
mkStatus statusCode statusMessage statusStatus =
Status
{ statusCode
, statusDetails = Nothing
, statusMessage
, statusStatus
}
-- ** V1ModelsGet200Response
-- | V1ModelsGet200Response
data V1ModelsGet200Response = V1ModelsGet200Response
{ v1ModelsGet200ResponseModels :: !(Maybe [Model]) -- ^ "models"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsGet200Response
instance A.FromJSON V1ModelsGet200Response where
parseJSON = A.withObject "V1ModelsGet200Response" $ \o ->
V1ModelsGet200Response
<$> (o .:? "models")
-- | ToJSON V1ModelsGet200Response
instance A.ToJSON V1ModelsGet200Response where
toJSON V1ModelsGet200Response {..} =
_omitNulls
[ "models" .= v1ModelsGet200ResponseModels
]
-- | Construct a value of type 'V1ModelsGet200Response' (by applying it's required fields, if any)
mkV1ModelsGet200Response
:: V1ModelsGet200Response
mkV1ModelsGet200Response =
V1ModelsGet200Response
{ v1ModelsGet200ResponseModels = Nothing
}
-- ** V1ModelsModelIdLogProbGradPost200Response
-- | V1ModelsModelIdLogProbGradPost200Response
data V1ModelsModelIdLogProbGradPost200Response = V1ModelsModelIdLogProbGradPost200Response
{ v1ModelsModelIdLogProbGradPost200ResponseGradLogProb :: !(Maybe [Double]) -- ^ "grad_log_prob"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsModelIdLogProbGradPost200Response
instance A.FromJSON V1ModelsModelIdLogProbGradPost200Response where
parseJSON = A.withObject "V1ModelsModelIdLogProbGradPost200Response" $ \o ->
V1ModelsModelIdLogProbGradPost200Response
<$> (o .:? "grad_log_prob")
-- | ToJSON V1ModelsModelIdLogProbGradPost200Response
instance A.ToJSON V1ModelsModelIdLogProbGradPost200Response where
toJSON V1ModelsModelIdLogProbGradPost200Response {..} =
_omitNulls
[ "grad_log_prob" .= v1ModelsModelIdLogProbGradPost200ResponseGradLogProb
]
-- | Construct a value of type 'V1ModelsModelIdLogProbGradPost200Response' (by applying it's required fields, if any)
mkV1ModelsModelIdLogProbGradPost200Response
:: V1ModelsModelIdLogProbGradPost200Response
mkV1ModelsModelIdLogProbGradPost200Response =
V1ModelsModelIdLogProbGradPost200Response
{ v1ModelsModelIdLogProbGradPost200ResponseGradLogProb = Nothing
}
-- ** V1ModelsModelIdLogProbPost200Response
-- | V1ModelsModelIdLogProbPost200Response
data V1ModelsModelIdLogProbPost200Response = V1ModelsModelIdLogProbPost200Response
{ v1ModelsModelIdLogProbPost200ResponseLogProb :: !(Maybe Double) -- ^ "log_prob"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsModelIdLogProbPost200Response
instance A.FromJSON V1ModelsModelIdLogProbPost200Response where
parseJSON = A.withObject "V1ModelsModelIdLogProbPost200Response" $ \o ->
V1ModelsModelIdLogProbPost200Response
<$> (o .:? "log_prob")
-- | ToJSON V1ModelsModelIdLogProbPost200Response
instance A.ToJSON V1ModelsModelIdLogProbPost200Response where
toJSON V1ModelsModelIdLogProbPost200Response {..} =
_omitNulls
[ "log_prob" .= v1ModelsModelIdLogProbPost200ResponseLogProb
]
-- | Construct a value of type 'V1ModelsModelIdLogProbPost200Response' (by applying it's required fields, if any)
mkV1ModelsModelIdLogProbPost200Response
:: V1ModelsModelIdLogProbPost200Response
mkV1ModelsModelIdLogProbPost200Response =
V1ModelsModelIdLogProbPost200Response
{ v1ModelsModelIdLogProbPost200ResponseLogProb = Nothing
}
-- ** V1ModelsModelIdParamsPost200Response
-- | V1ModelsModelIdParamsPost200Response
data V1ModelsModelIdParamsPost200Response = V1ModelsModelIdParamsPost200Response
{ v1ModelsModelIdParamsPost200ResponseId :: !(Maybe Text) -- ^ "id"
, v1ModelsModelIdParamsPost200ResponseParams :: !(Maybe [Parameter]) -- ^ "params"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsModelIdParamsPost200Response
instance A.FromJSON V1ModelsModelIdParamsPost200Response where
parseJSON = A.withObject "V1ModelsModelIdParamsPost200Response" $ \o ->
V1ModelsModelIdParamsPost200Response
<$> (o .:? "id")
<*> (o .:? "params")
-- | ToJSON V1ModelsModelIdParamsPost200Response
instance A.ToJSON V1ModelsModelIdParamsPost200Response where
toJSON V1ModelsModelIdParamsPost200Response {..} =
_omitNulls
[ "id" .= v1ModelsModelIdParamsPost200ResponseId
, "params" .= v1ModelsModelIdParamsPost200ResponseParams
]
-- | Construct a value of type 'V1ModelsModelIdParamsPost200Response' (by applying it's required fields, if any)
mkV1ModelsModelIdParamsPost200Response
:: V1ModelsModelIdParamsPost200Response
mkV1ModelsModelIdParamsPost200Response =
V1ModelsModelIdParamsPost200Response
{ v1ModelsModelIdParamsPost200ResponseId = Nothing
, v1ModelsModelIdParamsPost200ResponseParams = Nothing
}
-- ** V1ModelsModelIdTransformInitsPost200Response
-- | V1ModelsModelIdTransformInitsPost200Response
data V1ModelsModelIdTransformInitsPost200Response = V1ModelsModelIdTransformInitsPost200Response
{ v1ModelsModelIdTransformInitsPost200ResponseParamsRUnconstrained :: !(Maybe [Double]) -- ^ "params_r_unconstrained"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsModelIdTransformInitsPost200Response
instance A.FromJSON V1ModelsModelIdTransformInitsPost200Response where
parseJSON = A.withObject "V1ModelsModelIdTransformInitsPost200Response" $ \o ->
V1ModelsModelIdTransformInitsPost200Response
<$> (o .:? "params_r_unconstrained")
-- | ToJSON V1ModelsModelIdTransformInitsPost200Response
instance A.ToJSON V1ModelsModelIdTransformInitsPost200Response where
toJSON V1ModelsModelIdTransformInitsPost200Response {..} =
_omitNulls
[ "params_r_unconstrained" .= v1ModelsModelIdTransformInitsPost200ResponseParamsRUnconstrained
]
-- | Construct a value of type 'V1ModelsModelIdTransformInitsPost200Response' (by applying it's required fields, if any)
mkV1ModelsModelIdTransformInitsPost200Response
:: V1ModelsModelIdTransformInitsPost200Response
mkV1ModelsModelIdTransformInitsPost200Response =
V1ModelsModelIdTransformInitsPost200Response
{ v1ModelsModelIdTransformInitsPost200ResponseParamsRUnconstrained = Nothing
}
-- ** V1ModelsModelIdWriteArrayPost200Response
-- | V1ModelsModelIdWriteArrayPost200Response
data V1ModelsModelIdWriteArrayPost200Response = V1ModelsModelIdWriteArrayPost200Response
{ v1ModelsModelIdWriteArrayPost200ResponseParamsRConstrained :: !(Maybe [Double]) -- ^ "params_r_constrained"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON V1ModelsModelIdWriteArrayPost200Response
instance A.FromJSON V1ModelsModelIdWriteArrayPost200Response where
parseJSON = A.withObject "V1ModelsModelIdWriteArrayPost200Response" $ \o ->
V1ModelsModelIdWriteArrayPost200Response
<$> (o .:? "params_r_constrained")
-- | ToJSON V1ModelsModelIdWriteArrayPost200Response
instance A.ToJSON V1ModelsModelIdWriteArrayPost200Response where
toJSON V1ModelsModelIdWriteArrayPost200Response {..} =
_omitNulls
[ "params_r_constrained" .= v1ModelsModelIdWriteArrayPost200ResponseParamsRConstrained
]
-- | Construct a value of type 'V1ModelsModelIdWriteArrayPost200Response' (by applying it's required fields, if any)
mkV1ModelsModelIdWriteArrayPost200Response
:: V1ModelsModelIdWriteArrayPost200Response
mkV1ModelsModelIdWriteArrayPost200Response =
V1ModelsModelIdWriteArrayPost200Response
{ v1ModelsModelIdWriteArrayPost200ResponseParamsRConstrained = Nothing
}
-- * Enums
-- ** E'Function
-- | Enum of 'Text'
data E'Function
= E'Function'Hmc_nuts_diag_e_adapt -- ^ @"stan::services::sample::hmc_nuts_diag_e_adapt"@
| E'Function'Fixed_param -- ^ @"stan::services::sample::fixed_param"@
deriving (P.Show, P.Eq, P.Typeable, P.Ord, P.Bounded, P.Enum)
instance A.ToJSON E'Function where toJSON = A.toJSON . fromE'Function
instance A.FromJSON E'Function where parseJSON o = P.either P.fail (pure . P.id) . toE'Function =<< A.parseJSON o
instance WH.ToHttpApiData E'Function where toQueryParam = WH.toQueryParam . fromE'Function
instance WH.FromHttpApiData E'Function where parseQueryParam o = WH.parseQueryParam o >>= P.left T.pack . toE'Function
instance MimeRender MimeMultipartFormData E'Function where mimeRender _ = mimeRenderDefaultMultipartFormData
-- | unwrap 'E'Function' enum
fromE'Function :: E'Function -> Text
fromE'Function = \case
E'Function'Hmc_nuts_diag_e_adapt -> "stan::services::sample::hmc_nuts_diag_e_adapt"
E'Function'Fixed_param -> "stan::services::sample::fixed_param"
-- | parse 'E'Function' enum
toE'Function :: Text -> P.Either String E'Function
toE'Function = \case
"stan::services::sample::hmc_nuts_diag_e_adapt" -> P.Right E'Function'Hmc_nuts_diag_e_adapt
"stan::services::sample::fixed_param" -> P.Right E'Function'Fixed_param
s -> P.Left $ "toE'Function: enum parse failure: " P.++ P.show s