packages feed

cabal-cache-0.2.0.2: src/HaskellWorks/Ci/Assist/Options.hs

module HaskellWorks.Ci.Assist.Options
  ( readOrFromTextOption
  ) where

import Network.AWS.Data.Text (FromText (..), fromText)
import Options.Applicative   hiding (columns)
import Text.Read             (readEither)

import qualified Data.Text as T

readOrFromTextOption :: (Read a, FromText a) => Mod OptionFields a -> Parser a
readOrFromTextOption =
  let fromStr s = readEither s <|> fromText (T.pack s)
  in option $ eitherReader fromStr