module Experimenter.Parameter.Ops
    ( convertParameterSetup
    ) where

import           Data.Serialize

import           Experimenter.Models
import           Experimenter.Parameter.Type

convertParameterSetup :: ExpsId -> ParameterSetup a -> Param
convertParameterSetup :: forall a. ExpsId -> ParameterSetup a -> Param
convertParameterSetup ExpsId
expsId (ParameterSetup Text
name b -> a -> a
_ a -> b
_ Maybe (b -> IO [b])
_ (Just (b
minB,b
maxB)) Maybe (b -> Bool)
_ Maybe (b -> ExperimentDesign)
_) = ExpsId -> Text -> Maybe ByteString -> Maybe ByteString -> Param
Param ExpsId
expsId Text
name (forall a. a -> Maybe a
Just forall a b. (a -> b) -> a -> b
$ Put -> ByteString
runPut forall a b. (a -> b) -> a -> b
$ forall t. Serialize t => Putter t
put b
minB) (forall a. a -> Maybe a
Just forall a b. (a -> b) -> a -> b
$ Put -> ByteString
runPut forall a b. (a -> b) -> a -> b
$ forall t. Serialize t => Putter t
put b
maxB)
convertParameterSetup ExpsId
expsId (ParameterSetup Text
name b -> a -> a
_ a -> b
_ Maybe (b -> IO [b])
_ Maybe (b, b)
Nothing Maybe (b -> Bool)
_ Maybe (b -> ExperimentDesign)
_) = ExpsId -> Text -> Maybe ByteString -> Maybe ByteString -> Param
Param ExpsId
expsId Text
name forall a. Maybe a
Nothing forall a. Maybe a
Nothing