var searchIndex = {}; searchIndex["clap"] = {"doc":"A simple to use, efficient, and full featured library for parsing command line arguments and subcommands when writing console, or terminal applications.","items":[[3,"Arg","clap","The abstract representation of a command line argument. Used to set all the options and\nrelationships that define a valid argument for the program.",null,null],[3,"ArgGroup","","`ArgGroup`s are a family of related arguments and way for you to express, "Any of these\narguments". By placing arguments in a logical group, you can create easier requirement and\nexclusion rules instead of having to list each argument individually, or when you want a rule\nto apply "any but not all" arguments.",null,null],[3,"ArgMatches","","Used to get information about the arguments that where supplied to the program at runtime by\nthe user. New instances of this struct are obtained by using the `App::get_matches` family of\nmethods.",null,null],[3,"SubCommand","","The abstract representation of a command line subcommand.",null,null],[3,"App","","Used to create a representation of a command line program and all possible command line\narguments. Application settings are set using the "builder pattern" with the\n`.get_matches()` family of methods being the terminal methods that starts the runtime-parsing\nprocess. These methods then return information about the user supplied arguments (or lack there\nof).",null,null],[3,"Error","","Command Line Argument Parser Error",null,null],[12,"message","","Formated error message",0,null],[12,"kind","","The type of error",0,null],[12,"info","","Any additional information passed along, such as the argument name that caused the error",0,null],[4,"AppSettings","","Application level settings, which affect how `App` operates",null,null],[13,"SubcommandsNegateReqs","","Allows subcommands to override all requirements of the parent command. For example\nif you had a subcommand or top level application which had a required argument that\nare only required as long as there is no subcommand present, using this setting would allow\nyou set those arguments to `required(true)` and yet receive no error so long as the user\nuses a valid subcommand instead.",1,null],[13,"SubcommandRequired","","Allows specifying that if no subcommand is present at runtime, error and exit gracefully",1,null],[13,"ArgRequiredElseHelp","","Specifies that the help text should be displayed (and then exit gracefully), if no\narguments are present at runtime (i.e. an empty run such as, `$ myprog`.",1,null],[13,"GlobalVersion","","Specifies to version of the current command for all child subcommands. (Defaults to false;\nsubcommands have independant version strings from their parents)",1,null],[13,"VersionlessSubcommands","","Disables `-V` and `--version` for all subcommands (Defaults to false; subcommands have\nversion flags)",1,null],[13,"UnifiedHelpMessage","","Groups flags and options together presenting a more unified help message (a la `getopts` or\n`docopt` style). The default is the auto-generated help message groups flags, options\nseparately.",1,null],[13,"WaitOnError","","Will display a message "Press [ENTER]/[RETURN] to continue..." and wait user before\nexiting",1,null],[13,"SubcommandRequiredElseHelp","","Specifies that the help text should be displayed (and then exit gracefully), if no\nsubcommands are present at runtime (i.e. an empty run such as, `$ myprog`.",1,null],[13,"Hidden","","Specifies that this subcommand should be hidden from help messages",1,null],[13,"TrailingVarArg","","Specifies that the final positional argument is a "VarArg" and that `clap` should not\nattempt to parse any further args.",1,null],[13,"NoBinaryName","","Specifies that the parser should not assume the first argument passed is the binary name.\nThis is normally the case when using a "daemon" style mode, or an interactive CLI where one\none would not normally type the binary or program name for each command.",1,null],[13,"AllowExternalSubcommands","","Specifies that an unexpected argument positional arguments which would otherwise cause a\n`ErrorKind::UnknownArgument` error, should instead be treated as a subcommand in the\n`ArgMatches` struct.",1,null],[13,"StrictUtf8","","Specifies that any invalid UTF-8 code points should be treated as an error and fail\nwith a `ErrorKind::InvalidUtf8` error.",1,null],[13,"AllowInvalidUtf8","","Specifies that any invalid UTF-8 code points should *not* be treated as an error. This is\nthe default behavior of `clap`",1,null],[13,"AllowLeadingHyphen","","Specifies that leading hyphens are allowed in argument *values*, such as negative numbers\n`-10`",1,null],[13,"HidePossibleValuesInHelp","","Tells `clap` *not* to print possible values when displaying help information. This can be\nuseful if there are many values, or they are explained elsewhere.",1,null],[13,"NextLineHelp","","Places the help string for all arguments on the line after the argument",1,null],[13,"DeriveDisplayOrder","","Displays the arguments and subcommands in the help message in the order that they were\ndeclared in, vice alphabetically which is the default.",1,null],[4,"Format","","Defines styles for different types of error messages. Defaults to Error=Red, Warning=Yellow,\nand Good=Green",null,null],[13,"Error","","Defines the style used for errors, defaults to Red",2,null],[13,"Warning","","Defines the style used for warnings, defaults to Yellow",2,null],[13,"Good","","Defines the style used for good values, defaults to Green",2,null],[4,"ErrorKind","","Command line argument parser kind of error",null,null],[13,"InvalidValue","","Occurs when an `Arg` has a set of possible values, and the user provides a value which\nisn't in that set.",3,null],[13,"UnknownArgument","","Occurs when a user provides a flag, option, or argument which wasn't defined.",3,null],[13,"InvalidSubcommand","","Occurs when the user provids an unrecognized subcommand which meets the threshold for being\nsimilar enough to an existing subcommand so as to not cause the more general\n`UnknownArgument` error.",3,null],[13,"UnrecognizedSubcommand","","Occurs when the user provids an unrecognized subcommand which does not meet the threshold\nfor being similar enough to an existing subcommand so as to not cause the more detailed\n`InvalidSubcommand` error.",3,null],[13,"EmptyValue","","Occurs when the user provides an empty value for an option that does not allow empty\nvalues.",3,null],[13,"ValueValidation","","Occurs when the user provides a value for an argument with a custom validation and the\nvalue fails that validation.",3,null],[13,"TooManyValues","","Occurs when a user provides more values for an argument than were defined by setting\n`Arg::max_values`.",3,null],[13,"TooFewValues","","Occurs when the user provides fewer values for an argument than were defined by setting\n`Arg::min_values`.",3,null],[13,"WrongNumberOfValues","","Occurs when the user provides a different number of values for an argument than what's\nbeen defined by setting `Arg::number_of_values` or than was implicitly set by\n`Arg::value_names`.",3,null],[13,"ArgumentConflict","","Occurs when the user provides two values which conflict with each other and can't be used\ntogether.",3,null],[13,"MissingRequiredArgument","","Occurs when the user does not provide one or more required arguments.",3,null],[13,"MissingSubcommand","","Occurs when a subcommand is required (as defined by `AppSettings::SubcommandRequired`), but\nthe user does not provide one.",3,null],[13,"MissingArgumentOrSubcommand","","Occurs when either an argument or subcommand is required, as defined by\n`AppSettings::ArgRequiredElseHelp` but the user did not provide one.",3,null],[13,"UnexpectedMultipleUsage","","Occurs when the user provides an argument multiple times which has not been set to allow\nmultiple uses.",3,null],[13,"InvalidUtf8","","Occurs when the user provides a value containing invalid UTF-8 for an argument and\n`AppSettings::StrictUtf8` is set.",3,null],[13,"HelpDisplayed","","Not a true "error" as it means `--help` or similar was used. The help message will be sent\nto `stdout`.",3,null],[13,"VersionDisplayed","","Not a true "error" as it means `--version` or similar was used. The message will be sent\nto `stdout`.",3,null],[13,"ArgumentNotFound","","Occurs when using the `value_t!` and `values_t!` macros to convert an argument value into\ntype `T`, but the argument you requested wasn't used. I.e. you asked for an argument with\nname `config` to be converted, but `config` wasn't used by the user.",3,null],[13,"Io","","Represents an I/O error, typically while writing to `stderr` or `stdout`.",3,null],[13,"Format","","Represents an Rust Display Format error, typically white writing to `stderr` or `stdout`.",3,null],[11,"clone","","",1,null],[11,"eq","","",1,null],[11,"fmt","","",1,null],[11,"from_str","","",1,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"new","","Creates a new instance of an application requiring a name. The name may be, but doesn't\nhave to be same as the binary. The name will be displayed to the user when they request to\nprint version or help and usage information.",4,{"inputs":[{"name":"s"}],"output":{"name":"self"}}],[11,"author","","Sets a string of author(s) that will be displayed to the user when they request the help\ninformation with `--help` or `-h`.",4,null],[11,"bin_name","","Overrides the system-determined binary name. This should only be used when absolutely\nneccessary, such as when the binary name for your application is misleading, or perhaps\n*not* how the user should invoke your program.",4,null],[11,"about","","Sets a string describing what the program does. This will be displayed when displaying help\ninformation.",4,null],[11,"after_help","","Adds additional help information to be displayed in addition to auto-generated help. This\ninformation is displayed **after** the auto-generated help information. This is often used\nto describe how to use the arguments, or caveats to be noted.",4,null],[11,"version","","Sets a string of the version number to be displayed when displaying version or help\ninformation.",4,null],[11,"usage","","Sets a custom usage string to override the auto-generated usage string.",4,null],[11,"help","","Sets a custom help message and overrides the auto-generated one. This should only be used\nwhen the auto-generated message does not suffice.",4,null],[11,"help_short","","Sets the short version of the `help` argument without the preceding `-`.",4,null],[11,"version_short","","Sets the short version of the `version` argument without the preceding `-`.",4,null],[11,"setting","","Enables a single Application level settings.",4,null],[11,"settings","","Enables multiple Application level settings",4,null],[11,"arg","","Adds an argument to the list of valid possibilties.",4,null],[11,"args","","Adds multiple arguments to the list of valid possibilties",4,null],[11,"arg_from_usage","","A convienience method for adding a single argument from a usage type string. The string\nused follows the same rules and syntax as `Arg::from_usage()`",4,null],[11,"args_from_usage","","Adds multiple arguments at once from a usage string, one per line. See `Arg::from_usage()`\nfor details on the syntax and rules supported.",4,null],[11,"group","","Adds an `ArgGroup` to the application. `ArgGroup`s are a family of related arguments. By\nplacing them in a logical group, you can build easier requirement and exclusion rules. For\ninstance, you can make an entire `ArgGroup` required, meaning that one (and *only* one) argument\nfrom that group must be present at runtime.",4,null],[11,"groups","","Adds multiple `ArgGroup`s to the application at once.",4,null],[11,"subcommand","","Adds a subcommand to the list of valid possibilties. Subcommands are effectively sub-apps,\nbecause they can contain their own arguments, subcommands, version, usage, etc. They also\nfunction just like apps, in that they get their own auto generated help, version, and\nusage.",4,null],[11,"subcommands","","Adds multiple subcommands to the list of valid possibilties by iterating over a Vec of\n`SubCommand`s",4,null],[11,"display_order","","Allows custom ordering of subcommands within the help message. Subcommands with a lower\nvalue will be displayed first in the help message. This is helpful when one would like to\nemphasise frequently used subcommands, or prioritize those towards the top of the list.\nDuplicate values **are** allowed. Subcommands with duplicate display orders will be\ndisplayed in alphabetical order.",4,null],[11,"print_help","","Prints the full help message to `io::stdout()` using a `BufWriter`",4,null],[11,"write_help","","Writes the full help message to the user to a `io::Write` object",4,null],[11,"get_matches","","Starts the parsing process, upon a failed parse an error will be displayed to the user and\nthe process with exit with the appropriate error code. By default this method gets matches\nfrom `env::args_os`",4,null],[11,"get_matches_safe","","Starts the parsing process. This method will return a `Result` type instead of exiting the\nthe process on failed parse. By default this method gets matches\nfrom `env::args_os`",4,null],[11,"get_matches_from","","Starts the parsing process. Like `App::get_matches` this method does not return a `Result`\nand will automatically exit with an error message. This method, however, lets you specify\nwhat iterator to use when performing matches, such as a `Vec` of your making.",4,null],[11,"get_matches_from_safe","","Starts the parsing process. A combination of `App::get_matches_from`, and\n`App::get_matches_safe`",4,null],[11,"get_matches_from_safe_borrow","","Starts the parsing process without consuming the `App` struct `self`. This is normally not\nthe desired functionality, instead prefer `App::get_matches_from_safe` which *does*\nconsume `self`.",4,null],[11,"clone","","",4,null],[11,"fmt","","",4,null],[11,"default","","",5,{"inputs":[],"output":{"name":"self"}}],[11,"with_name","","Creates a new instance of `Arg` using a unique string name. The name will be used to get\ninformation about whether or not the argument was used at runtime, get values, set\nrelationships with other args, etc..",5,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"from_usage","","Creates a new instance of `Arg` from a usage string. Allows creation of basic settings for\nthe `Arg`. The syntax is flexible, but there are some rules to follow.",5,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"short","","Sets the short version of the argument without the preceding `-`.",5,null],[11,"long","","Sets the long version of the argument without the preceding `--`.",5,null],[11,"help","","Sets the help text of the argument that will be displayed to the user when they print the\nusage/help information.",5,null],[11,"required","","Sets whether or not the argument is required by default. Required by default means it is\nrequired, when no other conflicting rules have been evaluated. Conflicting rules take\nprecedence over being required. **Default:** `false`",5,null],[11,"conflicts_with","","Sets a conflicting argument by name. I.e. when using this argument,\nthe following argument can't be present and vice versa.",5,null],[11,"conflicts_with_all","","The same as `Arg::conflicts_with` but allows specifying multiple two-way conlicts per\nargument.",5,null],[11,"overrides_with","","Sets a overridable argument by name. I.e. this argument and the following argument\nwill override each other in POSIX style (whichever argument was specified at runtime\n**last** "wins")",5,null],[11,"overrides_with_all","","Sets multiple mutually overridable arguments by name. I.e. this argument and the following\nargument will override each other in POSIX style (whichever argument was specified at\nruntime **last** "wins")",5,null],[11,"requires","","Sets an argument by name that is required when this one is present I.e. when\nusing this argument, the following argument *must* be present.",5,null],[11,"requires_all","","Sets multiple arguments by names that are required when this one is present I.e. when\nusing this argument, the following arguments *must* be present.",5,null],[11,"takes_value","","Specifies that the argument takes a value at run time.",5,null],[11,"index","","Specifies the index of a positional argument **starting at** 1.",5,null],[11,"multiple","","Specifies that the argument may appear more than once. For flags, this results\nin the number of occurrences of the flag being recorded. For example `-ddd` or `-d -d -d`\nwould count as three occurrences. For options there is a distinct difference in multiple\noccurrences vs multiple values.",5,null],[11,"global","","Specifies that an argument can be matched to all child subcommands.",5,null],[11,"empty_values","","Allows an argument to accept explicitly empty values. An empty value must be specified at\nthe command line with an explicit `""`, or `''`",5,null],[11,"hidden","","Hides an argument from help message output.",5,null],[11,"possible_values","","Specifies a list of possible values for this argument. At runtime, `clap` verifies that only\none of the specified values was used, or fails with an error message.",5,null],[11,"possible_value","","Specifies a possible value for this argument, one at a time. At runtime, `clap` verifies\nthat only one of the specified values was used, or fails with error message.",5,null],[11,"group","","Specifies the name of the group the argument belongs to.",5,null],[11,"number_of_values","","Specifies how many values are required to satisfy this argument. For example, if you had a\n`-f <file>` argument where you wanted exactly 3 'files' you would set\n`.number_of_values(3)`, and this argument wouldn't be satisfied unless the user provided\n3 and only 3 values.",5,null],[11,"validator","","Allows one to perform a custom validation on the argument value. You provide a closure which\naccepts a `String` value, a `Result` where the `Err(String)` is a message displayed to the\nuser.",5,null],[11,"max_values","","Specifies the *maximum* number of values are for this argument. For example, if you had a\n`-f <file>` argument where you wanted up to 3 'files' you would set\n`.max_values(3)`, and this argument would be satisfied if the user provided, 1, 2, or 3\nvalues.",5,null],[11,"min_values","","Specifies the *minimum* number of values are for this argument. For example, if you had a\n`-f <file>` argument where you wanted at least 2 'files' you would set\n`.min_values(2)`, and this argument would be satisfied if the user provided, 2 or more\nvalues.",5,null],[11,"use_delimiter","","Specifies whether or not an arugment should allow grouping of multiple values via a\ndelimter. I.e. shoulde `--option=val1,val2,val3` be parsed as three values (`val1`, `val2`,\nand `val3`) or as a single value (`val1,val2,val3`). Defaults to using `,` (comma) as the\nvalue delimiter for all arguments that accept values (options and positional arguments)",5,null],[11,"value_delimiter","","Specifies the separator to use when values are clumped together, defaults to `,` (comma).",5,null],[11,"value_names","","Specify multiple names for values of option arguments. These names are cosmetic only, used\nfor help and usage strings only. The names are **not** used to access arguments. The values\nof the arguments are accessed in numeric order (i.e. if you specify two names `one` and\n`two` `one` will be the first matched value, `two` will be the second).",5,null],[11,"value_name","","Specifies the name for value of option or positional arguments inside of help documenation.\nThis name is cosmetic only, the name is **not** used to access arguments. This setting can\nbe very helpful when describing the type of input the user should be using, such as `FILE`,\n`INTERFACE`, etc. Although not required, it's somewhat convention to use all capital\nletters for the value name.",5,null],[11,"default_value","","Specifies the value of the argument when *not* specified at runtime.",5,null],[11,"next_line_help","","When set to `true` the help string will be displayed on the line after the argument and\nindented once. This can be helpful for arguments with very long or complex help messages.\nThis can also be helpful for arguments with very long flag names, or many/long value names.",5,null],[11,"display_order","","Allows custom ordering of args within the help message. Args with a lower value will be\ndisplayed first in the help message. This is helpful when one would like to emphasise\nfrequently used args, or prioritize those towards the top of the list. Duplicate values\n**are** allowed. Args with duplicate display orders will be displayed in alphabetical\norder.",5,null],[11,"is_set","","Checks if one of the `ArgSettings` settings is set for the argument",5,null],[11,"set","","Sets one of the `ArgSettings` settings for the argument",5,null],[11,"unset","","Unsets one of the `ArgSettings` settings for the argument",5,null],[11,"from","","",5,{"inputs":[{"name":"arg"}],"output":{"name":"self"}}],[11,"clone","","",5,null],[11,"clone","","",6,null],[11,"fmt","","",6,null],[11,"default","","",6,{"inputs":[],"output":{"name":"self"}}],[11,"value_of","","Gets the value of a specific option or positional argument (i.e. an argument that takes\nan additional value at runtime). If the option wasn't present at runtime\nit returns `None`.",6,null],[11,"value_of_lossy","","Gets the lossy value of a specific argument. If the argument wasn't present at runtime\nit returns `None`. A lossy value is one which contains invalid UTF-8 code points, those\ninvalid points will be replaced with `\\u{FFFD}`",6,null],[11,"value_of_os","","Gets the OS version of a string value of a specific argument. If the option wasn't present\nat runtime it returns `None`. An OS value on Unix-like systems is any series of bytes,\nregardless of whether or not they contain valid UTF-8 code points. Since `String`s in Rust\nare guaranteed to be valid UTF-8, a valid filename on a Unix system as an argument value may\ncontain invalid UTF-8 code points.",6,null],[11,"values_of","","Gets an Iterator of values of a specific argument (i.e. an argument that takes multiple\nvalues at runtime). If the option wasn't present at runtime it returns `None`",6,null],[11,"values_of_lossy","","Gets the lossy values of a specific argument If the option wasn't present at runtime\nit returns `None`. A lossy value is one which contains invalid UTF-8 code points, those\ninvalid points will be replaced with `\\u{FFFD}`",6,null],[11,"values_of_os","","Gets the OS version of a string value of a specific argument If the option wasn't present\nat runtime it returns `None`. An OS value on Unix-like systems is any series of bytes,\nregardless of whether or not they contain valid UTF-8 code points. Since `String`s in Rust\nare guaranteed to be valid UTF-8, a valid filename as an argument value on Linux (for\nexample) may contain invalid UTF-8 code points.",6,null],[11,"is_present","","Returns `true` if an argument was present at runtime, otherwise `false`.",6,null],[11,"occurrences_of","","Returns the number of times an argument was used at runtime. If an argument isn't present\nit will return `0`.",6,null],[11,"subcommand_matches","","Because subcommands are essentially "sub-apps" they have their own `ArgMatches` as well.\nThis method returns the `ArgMatches` for a particular subcommand or None if the subcommand\nwasn't present at runtime.",6,null],[11,"subcommand_name","","Because subcommands are essentially "sub-apps" they have their own `ArgMatches` as well.\nBut simply getting the sub-`ArgMatches` doesn't help much if we don't also know which\nsubcommand was actually used. This method returns the name of the subcommand that was used\nat runtime, or `None` if one wasn't.",6,null],[11,"subcommand","","This brings together `ArgMatches::subcommand_matches` and `ArgMatches::subcommand_name` by\nreturning a tuple with both pieces of information.",6,null],[11,"usage","","Returns a string slice of the usage statement for the `App` (or `SubCommand`)",6,null],[11,"clone","","",7,null],[11,"fmt","","",7,null],[11,"with_name","","Creates a new instance of a subcommand requiring a name. The name will be displayed\nto the user when they print version or help and usage information.",7,{"inputs":[{"name":"str"}],"output":{"name":"app"}}],[11,"default","","",8,{"inputs":[],"output":{"name":"arggroup"}}],[11,"with_name","","Creates a new instance of `ArgGroup` using a unique string name. The name will be used to\nget values from the group or refer to the group inside of conflict and requirement rules.",8,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"arg","","Adds an argument to this group by name",8,null],[11,"args","","Adds multiple arguments to this group by name",8,null],[11,"required","","Sets the group as required or not. A required group will be displayed in the usage string\nof the application in the format `[arg|arg2|arg3]`. A required `ArgGroup` simply states\nthat one, and only one argument from this group *must* be present at runtime (unless\nconflicting with another argument).",8,null],[11,"requires","","Sets the requirement rules of this group. This is not to be confused with a required group.\nRequirement rules function just like argument requirement rules, you can name other\narguments or groups that must be present when one of the arguments from this group is used.",8,null],[11,"requires_all","","Sets the requirement rules of this group. This is not to be confused with a required group.\nRequirement rules function just like argument requirement rules, you can name other\narguments or groups that must be present when one of the arguments from this group is used.",8,null],[11,"conflicts_with","","Sets the exclusion rules of this group. Exclusion (aka conflict) rules function just like\nargument exclusion rules, you can name other arguments or groups that must not be present\nwhen one of the arguments from this group are used.",8,null],[11,"conflicts_with_all","","Sets the exclusion rules of this group. Exclusion rules function just like argument\nexclusion rules, you can name other arguments or groups that must not be present when one\nof the arguments from this group are used.",8,null],[11,"fmt","","",8,null],[11,"from","","",8,{"inputs":[{"name":"arggroup"}],"output":{"name":"self"}}],[11,"clone","","",8,null],[11,"fmt","","",2,null],[11,"fmt","","",2,null],[11,"eq","","",3,null],[11,"clone","","",3,null],[11,"fmt","","",3,null],[11,"fmt","","",0,null],[11,"use_stderr","","Should the message be written to `stdout` or not",0,null],[11,"exit","","Prints the error to `stderr` and exits with a status of `1`",0,null],[11,"description","","",0,null],[11,"fmt","","",0,null],[11,"from","","",0,{"inputs":[{"name":"error"}],"output":{"name":"self"}}],[11,"from","","",0,{"inputs":[{"name":"error"}],"output":{"name":"self"}}],[6,"Result","","Short hand for result type",null,null],[14,"value_t!","","Convenience macro getting a typed value `T` where `T` implements `std::str::FromStr` from an\nargument value. This macro returns a `Result<T,String>` which allows you as the developer to\ndecide what you'd like to do on a failed parse. There are two types of errors, parse failures\nand those where the argument wasn't present (such as a non-required argument). You can use\nit to get a single value, or a iterator as with the `ArgMatches::values_of`",null,null],[14,"value_t_or_exit!","","Convenience macro getting a typed value `T` where `T` implements `std::str::FromStr` or\nexiting upon error instead of returning a `Result`",null,null],[14,"values_t!","","Convenience macro getting a typed value `Vec<T>` where `T` implements `std::str::FromStr` This\nmacro returns a `clap::Result<Vec<T>>` (`Result<Vec<T>, clap::Error>`) which allows you as the\ndeveloper to decide what you'd like to do on a failed parse.",null,null],[14,"values_t_or_exit!","","Convenience macro getting a typed value `Vec<T>` where `T` implements `std::str::FromStr` or\nexiting upon error.",null,null],[14,"_clap_count_exprs!","","Counts the number of comma-delimited expressions passed to it. The result is a compile-time\nevaluable expression, suitable for use as a static array size, or the value of a `const`.",null,null],[14,"arg_enum!","","Convenience macro to generate more complete enums with variants to be used as a type when\nparsing arguments. This enum also provides a `variants()` function which can be used to\nretrieve a `Vec<&'static str>` of the variant names, as well as implementing `FromStr` and\n`Display` automatically.",null,null],[14,"crate_version!","","Allows you pull the version for an from your Cargo.toml at compile time as\nMAJOR.MINOR.PATCH_PKGVERSION_PRE",null,null]],"paths":[[3,"Error"],[4,"AppSettings"],[4,"Format"],[4,"ErrorKind"],[3,"App"],[3,"Arg"],[3,"ArgMatches"],[3,"SubCommand"],[3,"ArgGroup"]]}; initSearch(searchIndex);