var searchIndex = {}; searchIndex['clap'] = {"items":[[0,"","clap","# clap",null,null],[3,"Arg","","The abstract representation of a command line argument used by the consumer of the library.\nUsed to set all the options and relationships that define a valid argument for the program.",null,null],[3,"SubCommand","","The abstract representation of a command line subcommand used by the consumer of the library.",null,null],[12,"name","","",0,null],[12,"matches","","",0,null],[3,"ArgMatches","","Used to get information about the arguments that where supplied to the program at runtime by\nthe user. To get a new instance of this struct you use `.get_matches()` of the `App` struct.",null,null],[3,"App","","Used to create a representation of a command line program and all possible command line\narguments for parsing at runtime.",null,null],[11,"new","","Creates a new instance of an application requiring a name (such as the binary). The name\nwill be displayed to the user when they request to print version or help and usage\ninformation. The name should not contain spaces (hyphens '-' are ok).",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[11,"author","","Sets a string of author(s) and will be displayed to the user when they request the version\nor help information.",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[11,"about","","Sets a string briefly describing what the program does and will be displayed when\ndisplaying help information.",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[11,"version","","Sets a string of the version number to be displayed when displaying version or help\ninformation.",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[11,"usage","","Sets a custom usage string to over-ride the auto-generated usage string. Will be\ndisplayed to the user when errors are found in argument parsing, or when you call\n`ArgMatches::usage()`",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[11,"arg","","Adds an argument to the list of valid possibilties manually. This method allows you full\ncontrol over the arguments settings and options (as well as dynamic generation). It also\nallows you specify several more advanced configuration options such as relational rules\n(exclusions and requirements).",1,{"inputs":[{"name":"app"},{"name":"arg"}],"output":{"name":"app"}}],[11,"args","","Adds multiple arguments to the list of valid possibilties by iterating over a Vec of Args",1,{"inputs":[{"name":"app"},{"name":"vec"}],"output":{"name":"app"}}],[11,"arg_from_usage","","A convienience method for adding a single basic argument (one without advanced relational rules)\nfrom a usage type string. The string used follows the same rules and syntax as `Arg::from_usage()`",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[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.",1,{"inputs":[{"name":"app"},{"name":"str"}],"output":{"name":"app"}}],[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 usage.",1,{"inputs":[{"name":"app"},{"name":"app"}],"output":{"name":"app"}}],[11,"subcommands","","Adds multiple subcommands to the list of valid possibilties by iterating over a Vec of `SubCommand`s",1,{"inputs":[{"name":"app"},{"name":"vec"}],"output":{"name":"app"}}],[11,"get_matches","","",1,{"inputs":[{"name":"app"}],"output":{"name":"argmatches"}}],[11,"new","","Creates a new instace of `Arg` using a unique string name.\nThe name will be used by the library consumer to get information about\nwhether or not the argument was used at runtime. ",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"with_name","","Creates a new instace of `Arg` using a unique string name.\nThe name will be used by the library consumer to get information about\nwhether or not the argument was used at runtime. ",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"from_usage","","Creates a new instace of `Arg` from a usage string. Allows creation of basic settings\nfor Arg (i.e. everything except relational rules). The syntax is flexible, but there are\nsome rules to follow.",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"short","","Sets the short version of the argument without the preceding `-`.",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"long","","Sets the long version of the argument without the preceding `--`.",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"help","","Sets the help text of the argument that will be displayed to the user\nwhen they print the usage/help information. ",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"required","","Sets whether or not the argument is required by default. Required by\ndefault means it is required, when no other mutually exlusive rules have\nbeen evaluated. Mutually exclusive rules take precedence over being required\nby default.",2,{"inputs":[{"name":"arg"},{"name":"bool"}],"output":{"name":"arg"}}],[11,"mutually_excludes","","Sets a mutually exclusive argument by name. I.e. when using this argument,\nthe following argument can't be present.",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"mutually_excludes_all","","Sets a mutually exclusive arguments by names. I.e. when using this argument,\nthe following argument can't be present.",2,{"inputs":[{"name":"arg"},{"name":"vec"}],"output":{"name":"arg"}}],[11,"requires","","Sets an argument by name that is required when this one is presnet I.e. when\nusing this argument, the following argument *must* be present.",2,{"inputs":[{"name":"arg"},{"name":"str"}],"output":{"name":"arg"}}],[11,"requires_all","","Sets arguments by names that are required when this one is presnet I.e. when\nusing this argument, the following arguments *must* be present.",2,{"inputs":[{"name":"arg"},{"name":"vec"}],"output":{"name":"arg"}}],[11,"takes_value","","Specifies that the argument takes an additional value at run time.",2,{"inputs":[{"name":"arg"},{"name":"bool"}],"output":{"name":"arg"}}],[11,"index","","Specifies the index of a positional argument starting at 1.",2,{"inputs":[{"name":"arg"},{"name":"u8"}],"output":{"name":"arg"}}],[11,"multiple","","Specifies if the flag may appear more than once such as for multiple debugging\nlevels (as an example). `-ddd` for three levels of debugging, or `-d -d -d`. \nWhen this is set to `true` you recieve the number of occurances the user supplied\nof a particular flag at runtime.",2,{"inputs":[{"name":"arg"},{"name":"bool"}],"output":{"name":"arg"}}],[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 a usage string.",2,{"inputs":[{"name":"arg"},{"name":"vec"}],"output":{"name":"arg"}}],[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`. ",3,{"inputs":[{"name":"argmatches"},{"name":"str"}],"output":{"name":"option"}}],[11,"values_of","","Gets the values of a specific option or positional argument in a vector (i.e. an argument\nthat takes multiple values at runtime). If the option wasn't present at runtime it\nreturns `None`",3,{"inputs":[{"name":"argmatches"},{"name":"str"}],"output":{"name":"option"}}],[11,"is_present","","Returns if an argument was present at runtime.",3,{"inputs":[{"name":"argmatches"},{"name":"str"}],"output":{"name":"bool"}}],[11,"occurrences_of","","Returns the number of occurrences of an option, flag, or positional argument at runtime.\nIf an argument isn't present it will return `0`. Can be used on arguments which *don't*\nallow multiple occurrences, but will obviously only return `0` or `1`.",3,{"inputs":[{"name":"argmatches"},{"name":"str"}],"output":{"name":"u8"}}],[11,"subcommand_matches","","Returns the `ArgMatches` for a particular subcommand or None if the subcommand wasn't\npresent at runtime.",3,{"inputs":[{"name":"argmatches"},{"name":"str"}],"output":{"name":"option"}}],[11,"subcommand_name","","Returns the name of the subcommand used of the parent `App`, or `None` if one wasn't found",3,{"inputs":[{"name":"argmatches"}],"output":{"name":"option"}}],[11,"subcommand","","Returns the name and `ArgMatches` of the subcommand used at runtime or (\"\", None) if one\nwasn't found.",3,null],[11,"usage","","Returns a string slice of the usage statement for the `App` (or `SubCommand`)",3,{"inputs":[{"name":"argmatches"}],"output":{"name":"str"}}],[11,"new","","Creates a new instance of a subcommand requiring a name. Will be displayed\nto the user when they print version or help and usage information.",0,{"inputs":[{"name":"subcommand"},{"name":"str"}],"output":{"name":"app"}}]],"paths":[[3,"SubCommand"],[3,"App"],[3,"Arg"],[3,"ArgMatches"]]}; initSearch(searchIndex);