`YL      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK Safe9:; 1Class describing parseable values. Much like the L class.Given a sequence of strings,  returns ME and the number of strings consumed if the parse failed. Otherwise,  returns N5 the parsed value and the number of strings consumed.bElement-wise, an entire string must be parsed in the sequence to be considered a successful parse.?Turns a parser of a single string into a parser suitable for a  instance.Useful for implementing a  for a type with a L instance by supplying O to this function.Note: The string is not@ tokenized in any way before being passed into the input parser.Repeatedly applies 5 the given number of times, accumulating the results.$Useful for implementing new parsers.Example: data Point = Point Float Float Float instance Parseable Point where parse strs = case repeatedParse 3 strs of (Just [x,y,z], n) -> (Just (Point x y z), n)` (Nothing, n) -> (Nothing, n) -Always succeeds and never consumes any input.>Greedily parses a single argument or no argument. Never fails. Parses a P using its L instance. 5Identity parser. Ex: @parse "abc" == (Just "abc", 1) !Parses a single character string.  Parses an Q using its L instance.  Parses an R using its S instance.  Parses a T using its S instance.UVWXY UVWXY Safe0A simple wrapper over [a]*. Used to avoid overlapping instances for  Parseable [a] and Parseable String<Greedily parses arguments item-wise. Never fails. Example: 3parse (words "5 67 NaN") == (Just (List [5,67]), 2)ZZSafe09;  Convenience  creation class.An option keyword, such as "--help"!All the aliases for this keyword.CText to describe the arguments to the option given by this keyword.BText to describe the function of the option given by this keyword.Shorthand for . Sets the 1 field in the keyword. Intended to be used infix: =kw "--directory" `argText` "DIR" `text` "Write files to DIR."  Sets the 1 field in the keyword. Intended to be used infix. /kw "--quiet" `text` "Suppress message display."!Used to create a  with many (or no) aliases"Used to create a  with a single alias.#Identiy mapping. !"#$    !"#$Safe%&)*+)*+*+))*+Safe9;<=?,-.[\/0,-..,-,-.[\/0Safe9:;<=?12]34121212]34NoneI5"User configuration for formatting.86Formats the given string with the given configuration.98Formats the given keywords with the given configuration.: !FormatConfig { fmtMaxWidth = 80 }^_`abcde56789:fghijklmnopqr56789:567:89^_`abcde56789:fghijklmnopqrNone*0I?PContains information about what went wrong during an unsuccessful options parse.@ Contains (error-message) (begin-args-index) (end-args-index)AA monad for parsing options.BDescribes the callback f/ to be called for a successfully parsed option.The function (or value) f= can have any arity and ultimately returns a value with type Monad m => m a2Each of the callback's arguments must have a type t which implements  and s.2Think of this as the following constraint synonym: ftype OptionCallback m a f = (Monad m, f ~ (Parseable t*, Typeable t*) => t0 -> t1 -> ... -> tN -> m a)Example callbacks: f0 = putStrLn "Option parsed!" :: IO () f1 = put :: String -> State String () f2 n = liftIO (print n) :: (MonadIO m) => Int -> m () f3 name year ratio = lift (print (name, year, ratio)) :: (MonadTrans m) => String -> Int -> Float -> m IO () f4 = return 7 :: Identity IntCuTries to parse the supplied options against input arguments. If successful, parsed option callbacks are returned in t. Otherwise an ? is returned in u.Example program: import System.Environment import Text.LambdaOptions options :: Options IO () () options = do addOption (kw ["--help", "-h"] `text` "Display this help text.") $ do putStrLn "Usage:" putStrLn $ getHelpDescription options addOption (kw "--user" `argText` "NAME" `text` "Prints name.") $ \name -> do putStrLn $ "Name:" ++ name addOption (kw "--user" `argText` "NAME AGE" `text` "Prints name and age.") $ \name age -> do putStrLn $ "Name:" ++ name ++ " Age:" ++ show (age :: Int) main :: IO () main = do args <- getArgs case runOptions options args of Left (ParseFailed msg _ _) -> do putStrLn msg putStrLn $ getHelpDescription options Right actions -> sequence_ actions5example.exe --user HaskellCurry 81 --user GraceHopperName:HaskellCurry Age:81Name:GraceHopperexample.exe -hUsage:3-h, --help Display this help text.( --user NAME Prints name.0 --user NAME AGE Prints name and age."example.exe --user Pythagoras LXXV!Unknown option at index 2: `LXXV'Usage:3-h, --help Display this help text.( --user NAME Prints name.0 --user NAME AGE Prints name and age.D Adds the supplied option to the Options m a () context.If the keyword is matched and the types of the callback's parameters can successfully be parsed, the callback is called with the parsed arguments.E9Produces the help description given by the input options.F Produces the "s inserted into the input options.+?@vwxyz{|}~ABCDEF?@ABCDEFCA?@BDEF?@vwxyz{|}~ABCDEF None 56789:?@ABCDEF     !""#$%&'()*+,-./01223456789:;<<=>?@ABCDEFGHIJKLMNOPQRSTRUVRUWRXYZ[\]^_Z[`abcZ[defghijkljmnnopqrstuvwxyz{|}~RRRG-lambda-options-0.9.0.1-Iv2k9dFeMwBC5g9J4iudGRText.LambdaOptions.ParseableText.LambdaOptions.ListText.LambdaOptions.Keyword"Text.LambdaOptions.Internal.Opaque(Text.LambdaOptions.Internal.OpaqueParser Text.LambdaOptions.Internal.WrapText.LambdaOptions.FormatterText.LambdaOptions.CoreText.LambdaOptions Parseableparse simpleParse repeatedParse$fParseable(,,)$fParseable(,) $fParseable()$fParseableMaybe$fParseableFloat $fParseable[]$fParseableChar$fParseableInteger$fParseableInt$fParseableWordListunList$fParseableList $fDataList $fShowList $fReadList$fEqList $fOrdList ToKeyword toKeywordKeywordkwNames kwArgTextkwTextkwargTexttext $fToKeyword[]$fToKeyword[]0$fToKeywordKeyword$fIsStringKeyword $fDataKeyword $fShowKeyword $fEqKeyword $fOrdKeywordOpaqueCallbackOpaqueGetOpaqueParsersgetOpaqueParsers OpaqueParser$fGetOpaqueParsersrm$fGetOpaqueParsersr(->)Wrapwrap $fWrapm(->)$fWrapmm FormatConfig fmtMaxWidthformatformatKeywordsdefaultFormatConfig$fShowFormatConfig$fReadFormatConfig$fEqFormatConfig$fOrdFormatConfig OptionsError ParseFailedOptionsOptionCallback runOptions addOptiongetHelpDescription getKeywords$fApplicativeOptions$fFunctorOptions$fMonadOptions$fMonadStateOptions$fShowOptionsErrorbaseGHC.ReadReadGHC.BaseNothingJust Text.Read readMaybeghc-prim GHC.TypesFloat integer-gmpGHC.Integer.TypeIntegerInt+read-bounded-0.1.1.1-65q3OV9LAMM1uci1Y8MQ5dText.Read.Bounded ReadBoundedWordrepeatedParse' parseBoundedtoPair parse2Tuple parse3Tuple internalErrordecomposeFuncProxy parseOpaque FormatterFormatterState fmtConfigfmtEmittedCharsfmtWordfmtWidthfmtIndentation runFormatter formatKeywordisShortformatKeywordNamesformatKeywordArgTextformatKeywordText flushWordchangeIndentationindentnewLine emitSpaceemitChar emitStringData.Typeable.InternalTypeable Data.EitherRightLeft OptionsStatestateOpaqueParsersstateOptionsByAritystateCollectedActions stateCurrMark stateHighMark stateArgsstateFormatConfig unOptions OptionInfo optionKeywordoptionTypeRepsoptionOpaqueCallbackgetProxyinternalizeKeyword mkParseFailedmkParseFailed'runOptionsInternal runOptions' addByArityfirstMwhileM tryParseAlltryParsetryParseByAritytryParseByOptionstryParseByOption matchKeyword matchKeyword'sequenceParserscollectKeywordscreateHelpDescription