var searchIndex = {}; searchIndex["cucumber"] = {"doc":"","items":[[5,"ruby_command","cucumber","Build a command to execute the Ruby Cucumber Server",null,{"inputs":[],"output":{"name":"command"}}],[5,"start","","Starts a Cucumber server and the Ruby client",null,null],[5,"start_with_addr","","Start a Cucumber server, with an ip and port, see the [`start()\nmethod`][start].\n[start]: fn.start.html",null,null],[0,"state","","Low level location of step functions and matcher logic",null,null],[3,"Captures","cucumber::state","Captures represents a group of captured strings for a single match.",null,null],[3,"Regex","","A compiled regular expression for matching Unicode strings.",null,null],[3,"Cucumber","","The Cucumber state wrapper",null,null],[12,"tags","","",0,null],[6,"Step","","",null,null],[6,"StepId","","",null,null],[8,"SendableStep","","The trait steps must implement to be invokable",null,null],[11,"new","","",0,{"inputs":[],"output":{"name":"cucumber"}}],[11,"insert_step","","Add a new step to the set of steps.",0,null],[11,"find_match","","Find a step or steps matching a given string.",0,null],[11,"pending","","Set a step pending with a useful message",0,null],[11,"fail","","Fails with a useful message",0,null],[11,"succeed_immediately","","Ends step execution successfully.\nI have no idea why anyone would want to do this, but it fills out the\n"pending, fail,\nsuccess" set.",0,null],[11,"invoke","","Directly execute the step matched by a regular expression.",0,null],[11,"step","","Retrieve a step based on its Id",0,null],[0,"server","cucumber","External facing interface to other Gherkin implementations",null,null],[3,"Server","cucumber::server","The interface between an external Gherkin parser and internal [Cucumber\nstate](../state/struct.Cucumber.html)",null,null],[3,"ServerHandle","","An "unplugged" return value from server start, for compiler reasons",null,null],[11,"stop","","",1,null],[11,"wait","","",1,null],[11,"new","","",2,{"inputs":[{"name":"r"}],"output":{"name":"server"}}],[11,"start","","",2,null],[0,"runner","cucumber","Coordinator logic between [server](server/index.html) and\n[state](state/index.html)",null,null],[3,"WorldRunner","cucumber::runner","The step runner for [Cucumber state](../state/struct.Cucumber.html)",null,null],[5,"invoke_to_response","","",null,{"inputs":[{"name":"simplestep"},{"name":"cucumber"},{"name":"world"},{"name":"vec"}],"output":{"name":"invokeresponse"}}],[8,"CommandRunner","","An interface for implementers that can consume a\n[Request](../event/request/enum.Request.html) and yield a\n[Response](../event/response/enum.Response.html)",null,null],[10,"execute_cmd","","",3,null],[11,"new","","",4,{"inputs":[{"name":"world"}],"output":{"name":"worldrunner"}}],[11,"execute_cmd","","",4,null],[11,"given","","",4,null],[11,"when","","",4,null],[11,"then","","",4,null],[0,"definitions","cucumber","Business logic for step registration and invoke argument destructuring",null,null],[0,"registration","cucumber::definitions","Logic for registering step definitions",null,null],[6,"SimpleStep","cucumber::definitions::registration","A "simpler" api-level step. Panic to fail.",null,null],[8,"CucumberRegistrar","","An interface for registering steps",null,null],[10,"given","","",5,null],[10,"when","","",5,null],[10,"then","","",5,null],[11,"given","cucumber::state","",0,null],[11,"when","","",0,null],[11,"then","","",0,null],[0,"destructuring","cucumber::definitions","Logic for dissassembling Invoke Arguments",null,null],[0,"invoke_arg","cucumber::definitions::destructuring","",null,null],[3,"ImproperInvokeArgError","cucumber::definitions::destructuring::invoke_arg","",null,null],[8,"Destructurable","","",null,null],[10,"destructure","","",6,null],[8,"FromInvokeArg","","",null,null],[16,"Err","","",7,null],[10,"from_invoke_arg","","",7,{"inputs":[{"name":"invokeargument"}],"output":{"name":"result"}}],[11,"eq","","",8,null],[11,"ne","","",8,null],[11,"clone","","",8,null],[11,"fmt","","",8,null],[0,"invoke_arg_set","cucumber::definitions::destructuring","",null,null],[4,"InvokeArgSetError","cucumber::definitions::destructuring::invoke_arg_set","",null,null],[13,"TypeMismatch","","",9,null],[12,"arg_idx","cucumber::definitions::destructuring::invoke_arg_set::InvokeArgSetError","",9,null],[13,"ArgCountMismatch","cucumber::definitions::destructuring::invoke_arg_set","",9,null],[12,"expected","cucumber::definitions::destructuring::invoke_arg_set::InvokeArgSetError","",9,null],[12,"actual","","",9,null],[8,"FromInvokeArgSet","cucumber::definitions::destructuring::invoke_arg_set","",null,null],[10,"from_invoke_arg_set","","",10,{"inputs":[{"name":"vec"}],"output":{"name":"result"}}],[8,"DestructurableSet","","",null,null],[10,"destructure_set","","",11,null],[11,"eq","","",9,null],[11,"ne","","",9,null],[11,"clone","","",9,null],[11,"fmt","","",9,null],[0,"event","cucumber","External facing interface for events",null,null],[0,"request","cucumber::event","Contains requests made by Gherkin interpreter (or Wire Protocol).",null,null],[3,"StepMatchesRequest","cucumber::event::request","",null,null],[12,"name_to_match","","",12,null],[3,"InvokeRequest","","",null,null],[12,"id","","",13,null],[12,"args","","",13,null],[3,"BeginScenarioRequest","","",null,null],[12,"tags","","",14,null],[3,"EndScenarioRequest","","",null,null],[12,"tags","","",15,null],[3,"SnippetTextRequest","","",null,null],[12,"step_keyword","","",16,null],[12,"multiline_arg_class","","",16,null],[12,"step_name","","",16,null],[4,"Request","","Types of requests handled by [runners](../../runner/struct.WorldRunner.html)",null,null],[13,"StepMatches","","",17,null],[13,"Invoke","","",17,null],[13,"BeginScenario","","",17,null],[13,"EndScenario","","",17,null],[13,"SnippetText","","",17,null],[4,"InvokeArgument","","The low level type capturing the possible values a step may provide.",null,null],[13,"String","","",18,null],[13,"None","","",18,null],[13,"Table","","",18,null],[11,"eq","","",12,null],[11,"ne","","",12,null],[11,"clone","","",12,null],[11,"fmt","","",12,null],[11,"eq","","",13,null],[11,"ne","","",13,null],[11,"clone","","",13,null],[11,"fmt","","",13,null],[11,"eq","","",14,null],[11,"ne","","",14,null],[11,"clone","","",14,null],[11,"fmt","","",14,null],[11,"eq","","",15,null],[11,"ne","","",15,null],[11,"clone","","",15,null],[11,"fmt","","",15,null],[11,"eq","","",16,null],[11,"ne","","",16,null],[11,"clone","","",16,null],[11,"fmt","","",16,null],[11,"fmt","","",17,null],[11,"clone","","",17,null],[11,"eq","","",17,null],[11,"ne","","",17,null],[11,"deserialize","","",17,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"fmt","","",18,null],[11,"clone","","",18,null],[11,"eq","","",18,null],[11,"ne","","",18,null],[11,"from_str","","",18,{"inputs":[{"name":"str"}],"output":{"name":"invokeargument"}}],[11,"from_step_arg","","",18,{"inputs":[{"name":"steparg"}],"output":{"name":"invokeargument"}}],[11,"deserialize","","",18,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[0,"response","cucumber::event","Contains responses for Gherkin interpreter (or Wire Protocol).",null,null],[3,"Step","cucumber::event::response","",null,null],[12,"id","","",19,null],[12,"args","","",19,null],[12,"source","","",19,null],[3,"FailMessage","","",null,null],[3,"StepArg","","",null,null],[12,"val","","",20,null],[12,"pos","","",20,null],[4,"Response","","Types of responses produced by\n[runners](../../runner/struct.WorldRunner.html)",null,null],[13,"StepMatches","","",21,null],[13,"Invoke","","",21,null],[13,"BeginScenario","","",21,null],[13,"EndScenario","","",21,null],[13,"SnippetText","","",21,null],[4,"StepMatchesResponse","","",null,null],[13,"NoMatch","","",22,null],[13,"Match","","",22,null],[4,"InvokeResponse","","The low level type capturing the possible outcomes a step invocation may\nhave.",null,null],[13,"Pending","","",23,null],[13,"Success","","",23,null],[13,"Fail","","",23,null],[11,"eq","","",19,null],[11,"ne","","",19,null],[11,"clone","","",19,null],[11,"fmt","","",19,null],[11,"eq","","",24,null],[11,"ne","","",24,null],[11,"clone","","",24,null],[11,"fmt","","",24,null],[11,"new","","",24,{"inputs":[{"name":"string"}],"output":{"name":"failmessage"}}],[11,"fmt","","",21,null],[11,"clone","","",21,null],[11,"eq","","",21,null],[11,"ne","","",21,null],[11,"serialize","","",21,null],[11,"fmt","","",20,null],[11,"clone","","",20,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"serialize","","",20,null],[11,"fmt","","",22,null],[11,"clone","","",22,null],[11,"eq","","",22,null],[11,"ne","","",22,null],[11,"fmt","","",23,null],[11,"clone","","",23,null],[11,"eq","","",23,null],[11,"ne","","",23,null],[11,"pending_from_str","","Build an InvokeResponse::Pending with a message",23,{"inputs":[{"name":"str"}],"output":{"name":"invokeresponse"}}],[11,"fail_from_str","","Build an InvokeResponse::Fail with a message",23,{"inputs":[{"name":"str"}],"output":{"name":"invokeresponse"}}],[11,"check_eq","","Return an InvokeResponse reflecting an equality check",23,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"invokeresponse"}}],[11,"check_not_eq","","Return an InvokeResponse reflecting a negative equality check",23,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"invokeresponse"}}],[11,"check","","Return an InvokeResponse reflecting a boolean outcome",23,{"inputs":[{"name":"bool"}],"output":{"name":"invokeresponse"}}],[11,"expect","","Return an InvokeResponse reflecting a boolean outcome with a custom\nmessage",23,{"inputs":[{"name":"bool"},{"name":"str"}],"output":{"name":"invokeresponse"}}],[11,"and","","Compose InvokeResponses with "and" logic, exiting on non-success",23,null],[11,"or","","Compose InvokeResponses with "or" logic, exiting on success",23,null],[0,"cucumber_regex","cucumber","Helpers for regular expressions",null,null],[5,"build","cucumber::cucumber_regex","",null,{"inputs":[{"name":"str"}],"output":{"name":"regex"}}],[14,"try_destructure!","cucumber","Destructure a vector of\n[InvokeArgument](event/request/enum.InvokeArgument.html) into a tuple of\nvalues, or a bad [InvokeResponse](event/response/enum.InvokeResponse.html),\nsimilar to normal try!",null,null],[14,"Given!","","Add a Given step to a\n[CucumberRegistrar](definitions/registration/trait.CucumberRegistrar.html)",null,null],[14,"When!","","Add a When step to a\n[CucumberRegistrar](definitions/registration/trait.CucumberRegistrar.html)",null,null],[14,"Then!","","Add a Then step to a\n[CucumberRegistrar](definitions/registration/trait.CucumberRegistrar.html)",null,null],[11,"pos","cucumber::state","Returns the start and end positions of the Nth capture group. Returns\n`None` if `i` is not a valid capture group or if the capture group did\nnot match anything. The positions returned are *always* byte indices\nwith respect to the original string matched.",25,null],[11,"at","","Returns the matched string for the capture group `i`. If `i` isn't\na valid capture group or didn't match anything, then `None` is\nreturned.",25,null],[11,"name","","Returns the matched string for the capture group named `name`. If\n`name` isn't a valid capture group or didn't match anything, then\n`None` is returned.",25,null],[11,"iter","","Creates an iterator of all the capture groups in order of appearance\nin the regular expression.",25,null],[11,"iter_pos","","Creates an iterator of all the capture group positions in order of\nappearance in the regular expression. Positions are byte indices\nin terms of the original string matched.",25,null],[11,"iter_named","","Creates an iterator of all named groups as an tuple with the group\nname and the value. The iterator returns these values in arbitrary\norder.",25,null],[11,"expand","","Expands all instances of `$name` in `text` to the corresponding capture\ngroup `name`.",25,null],[11,"len","","Returns the number of captured groups.",25,null],[11,"is_empty","","Returns true if and only if there are no captured groups.",25,null],[11,"clone","","",26,null],[11,"fmt","","Shows the original regular expression.",26,null],[11,"fmt","","Shows the original regular expression.",26,null],[11,"eq","","",26,null],[11,"from_str","","Attempts to parse a string into a regular expression",26,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"new","","Compiles a regular expression. Once compiled, it can be used repeatedly\nto search, split or replace text in a string.",26,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"with_size_limit","","Compiles a regular expression with the given size limit.",26,{"inputs":[{"name":"usize"},{"name":"str"}],"output":{"name":"result"}}],[11,"is_match","","Returns true if and only if the regex matches the string given.",26,null],[11,"find","","Returns the start and end byte range of the leftmost-first match in\n`text`. If no match exists, then `None` is returned.",26,null],[11,"find_iter","","Returns an iterator for each successive non-overlapping match in\n`text`, returning the start and end byte indices with respect to\n`text`.",26,null],[11,"captures","","Returns the capture groups corresponding to the leftmost-first\nmatch in `text`. Capture group `0` always corresponds to the entire\nmatch. If no match is found, then `None` is returned.",26,null],[11,"captures_iter","","Returns an iterator over all the non-overlapping capture groups matched\nin `text`. This is operationally the same as `find_iter`, except it\nyields information about submatches.",26,null],[11,"split","","Returns an iterator of substrings of `text` delimited by a match of the\nregular expression. Namely, each element of the iterator corresponds to\ntext that *isn't* matched by the regular expression.",26,null],[11,"splitn","","Returns an iterator of at most `limit` substrings of `text` delimited\nby a match of the regular expression. (A `limit` of `0` will return no\nsubstrings.) Namely, each element of the iterator corresponds to text\nthat *isn't* matched by the regular expression. The remainder of the\nstring that is not split will be the last element in the iterator.",26,null],[11,"replace","","Replaces the leftmost-first match with the replacement provided.\nThe replacement can be a regular string (where `$N` and `$name` are\nexpanded to match capture groups) or a function that takes the matches'\n`Captures` and returns the replaced string.",26,null],[11,"replace_all","","Replaces all non-overlapping matches in `text` with the replacement\nprovided. This is the same as calling `replacen` with `limit` set to\n`0`.",26,null],[11,"replacen","","Replaces at most `limit` non-overlapping matches in `text` with the\nreplacement provided. If `limit` is 0, then all non-overlapping matches\nare replaced.",26,null],[11,"shortest_match","","Returns the end location of a match in the text given.",26,null],[11,"as_str","","Returns the original string of this regex.",26,null],[11,"capture_names","","Returns an iterator over the capture names.",26,null],[11,"captures_len","","Returns the number of captures.",26,null],[11,"fmt","","",25,null],[11,"index","","",25,null],[11,"index","","",25,null],[11,"destructure","cucumber::event::request","",18,null]],"paths":[[3,"Cucumber"],[3,"ServerHandle"],[3,"Server"],[8,"CommandRunner"],[3,"WorldRunner"],[8,"CucumberRegistrar"],[8,"Destructurable"],[8,"FromInvokeArg"],[3,"ImproperInvokeArgError"],[4,"InvokeArgSetError"],[8,"FromInvokeArgSet"],[8,"DestructurableSet"],[3,"StepMatchesRequest"],[3,"InvokeRequest"],[3,"BeginScenarioRequest"],[3,"EndScenarioRequest"],[3,"SnippetTextRequest"],[4,"Request"],[4,"InvokeArgument"],[3,"Step"],[3,"StepArg"],[4,"Response"],[4,"StepMatchesResponse"],[4,"InvokeResponse"],[3,"FailMessage"],[3,"Captures"],[3,"Regex"]]}; initSearch(searchIndex);