úÎaq]è,      !"#$%&'()*+?How "sloppy" the parse is. All extraneous arguments are ! permitted, and will be skipped,  saved, and returned. "Trailing extraneous arguments are ! permitted, and will be skipped,  saved, and returned. Any extraneous arguments  (unparseable from description)  will cause the parser to fail. The data structure  produces. The key  element is the   . The argument map. Basename of 0th argument. Full usage string. !Remaining unprocessed arguments. 6The type of the mapping from argument index to value. ,-The "kinds of values" an argument can have. ./0123)For simple present vs not-present flags. -The description of an argument, suitable for  messages and for parsing. The  field 2 is used both for flags with a data argument, and  for positional data arguments. There are two cases:  0 The argument is a flag, in which case at least  one of  and  is provided; 3 The argument is positional, in which case neither   nor  are provided, but  is.  If none of , , or  are + provided, this is an error. See also the  (, ), and  *$ functions below, which are used to  generate . Connects the input description  to the output argument. One-character flag name. " Long name" of flag. Datum description.  Documentation for the argument. 6Information specific to an argument carrying a datum. 45Print name of datum. 6Type of datum. 7Datum is not required. &The types of arguments carrying data; 3 the constructor arguments are for default values. (Return the filename part of a pathname. 6 Unnecessarily efficient implementation does a single + tail-call traversal with no construction.  Pathname. !Rightmost component of pathname. 8.True if the described argument is positional.  Argument.  True if argument is positional. 9*True if the described argument is a flag.  Argument. True if argument is a flag. :,True if the described argument is optional.  Argument. -False if argument is required to be present. ;*Return the value of a defaulted argument.  Argument. Optional default value. <There'$s probably a better way to do this. +Format the described argument as a string. Argument to be described. String describing argument. =&Filter out the empty keys for a hash. %List of (optional key, value) pairs. Pairs with actual keys. >6Fail with an error if the argument description is bad  for some reason. Error message. Bogus polymorphic result. ?Make a keymap. List of key-value pairs. % Will be checked for duplicate keys. Key-value map. @.Make a keymap for looking up a flag argument. "Mapping from argdesc to flag key. List of argdesc. Map from key to argdesc. A8The iteration function is given a state and a list, and 9 expected to produce a new state and list. The function 5 is again invoked with the resulting state and list. + When the function returns the empty list, A returns  the final state produced. Function to iterate. Initial state. Initial list.  Final state. B'Print an error message during parsing. Usage message. Specific error message. Bogus polymorphic result. &Given a description of the arguments,  produces # a map from the arguments to their "values" and some other  useful byproducts. !Degree of completeness of parse. Argument descriptions. Full program pathname.  Incoming program argument list. !Outgoing argument parse results. /Most of the time, you just want the environment's 4 arguments and are willing to live in the IO monad.  This version of ! digs the pathname and arguments  out of the system directly. !Degree of completeness of parse. Argument descriptions. Argument parse results. JCheck whether a given optional argument was supplied. Works on all types. Parsed arguments. %Index of argument to be checked for. True if the arg was present. !2Return the String, if any, of the given argument. Parsed arguments. #Index of argument to be retrieved. Argument value if present. " Treat the C#, if any, of the given argument as 0 a file handle and try to open it as requested. Parsed arguments. #Index of argument to be retrieved. &IO mode the file should be opened in. 'Handle of opened file, if the argument  was present. # Treat the C%, if any, of the given argument as a 6 file handle and try to open it as requested. If not 5 present, substitute the appropriate one of stdin or  stdout as indicated by . Parsed arguments. #Index of argument to be retrieved. &IO mode the file should be opened in.  Must not be D. Appropriate file handle. $3Return the Integer, if any, of the given argument. Parsed arguments. #Index of argument to be retrieved. Argument value if present. %/Return the Int, if any, of the given argument. Parsed arguments. #Index of argument to be retrieved. Argument value if present. &2Return the Double, if any, of the given argument. Parsed arguments. #Index of argument to be retrieved. Argument value if present. '1Return the Float, if any, of the given argument. Parsed arguments. #Index of argument to be retrieved. Argument value if present. ( Generate the & for the given non-optional argument. Datum print name. Type constructor for datum.  Result is -ready. ) Generate the 2 for the given optional argument with no default. Datum print name. Type constructor for datum.  Result is -ready. * Generate the * for the given optional argument with the  given default. Datum print name. Type constructor for datum. Datum default value.  Result is -ready. +DGenerate a usage error with the given supplementary message string. ,  !"#$%&'()*+,()*  !"#$%&'+(  !"#$%&'()*+E       !"#$%&'()*+,-./0123456789:;<=>?@ABCDE parseargs-0.1System.Console.ParseArgsbase GHC.IO.IOModeReadMode WriteMode AppendModeIOMode ArgsCompleteArgsInterspersed ArgsTrailingArgsargs argsProgName argsUsageargsRest ArgRecordArgargIndexargAbbrargNameargDataargDescDataArgArgtype ArgtypeFloat ArgtypeDouble ArgtypeIntArgtypeInteger ArgtypeStringbaseName parseArgs parseArgsIOgotArg getArgString getArgFile getArgStdio getArgInteger getArgInt getArgDouble getArgFloatargDataRequiredargDataOptionalargDataDefaulted usageErrorArgval ArgvalFloat ArgvalDouble ArgvalInt ArgvalInteger ArgvalString ArgvalFlag dataArgNamedataArgArgtypedataArgOptionalarg_posnarg_flag arg_optionalarg_default_value arg_string filter_keys argdesc_errorkeymap_from_list make_keymapexhaust parse_errorGHC.BaseString ReadWriteMode