iris-0.1.0.0: Haskell CLI framework
Copyright(c) 2022 Dmitrii Kovanikov
LicenseMPL-2.0
MaintainerDmitrii Kovanikov <kovanikov@gmail.com>
StabilityExperimental
PortabilityPortable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Iris.Env

Description

Environment of a CLI app.

Since: 0.0.0.0

Synopsis

CLI application environment

Constructing

data CliEnv (cmd :: Type) (appEnv :: Type) Source #

CLI application environment. It contains default settings for every CLI app and parameter

Has the following type parameters:

  • cmd: application commands
  • appEnv: application-specific environment; use () if you don't have custom app environment

Since: 0.0.0.0

Constructors

CliEnv 

Fields

Instances

Instances details
MonadReader (CliEnv cmd appEnv) (CliApp cmd appEnv) Source #

Since: 0.0.0.0

Instance details

Defined in Iris.App

Methods

ask :: CliApp cmd appEnv (CliEnv cmd appEnv) #

local :: (CliEnv cmd appEnv -> CliEnv cmd appEnv) -> CliApp cmd appEnv a -> CliApp cmd appEnv a #

reader :: (CliEnv cmd appEnv -> a) -> CliApp cmd appEnv a #

mkCliEnv :: forall cmd appEnv. CliEnvSettings cmd appEnv -> IO (CliEnv cmd appEnv) Source #

Since: 0.0.0.0

Querying

asksCliEnv :: MonadReader (CliEnv cmd appEnv) m => (CliEnv cmd appEnv -> field) -> m field Source #

Get a field from the global environment CliEnv.

Since: 0.0.0.0

asksAppEnv :: MonadReader (CliEnv cmd appEnv) m => (appEnv -> field) -> m field Source #

Get a field from custom application-specific environment appEnv.

Since: 0.0.0.0