module Test.MockCat.TH.Types
  ( MockOptions(..)
  , options
  )
where

-- | Options for generating mocks.
--
--  - prefix: Stub function prefix
--  - suffix: stub function suffix
--  - implicitMonadicReturn: If True, the return value of the stub function is wrapped in a monad automatically.
data MockOptions = MockOptions {MockOptions -> String
prefix :: String, MockOptions -> String
suffix :: String, MockOptions -> Bool
implicitMonadicReturn :: Bool}

-- | Default Options.
--
--  Stub function names are prefixed with "_".
options :: MockOptions
options :: MockOptions
options = MockOptions {prefix :: String
prefix = String
"_", suffix :: String
suffix = String
"", implicitMonadicReturn :: Bool
implicitMonadicReturn = Bool
False}