var searchIndex = {}; searchIndex["piston_meta"] = {"doc":"Meta parsing and encoding for data oriented design","items":[[3,"Whitespace","piston_meta","Stores information about whitespace.",null,null],[12,"optional","","Whether the whitespace is optional or required.",0,null],[12,"debug_id","","A debug id to track down the rule generating an error.",0,null],[3,"ParseStdErr","","Reports error to standard error output.",null,null],[3,"Token","","Stores information about token.",null,null],[12,"text","","The text to match against.",1,null],[12,"inverted","","Whether to set property to true or false (inverted).",1,null],[12,"property","","Which property to set if token matches.",1,null],[12,"debug_id","","A debug id to track down the rule generating an error.",1,null],[3,"Select","","Stores information about select.",null,null],[12,"args","","The rules to select from.",2,null],[12,"debug_id","","A debug id to track down the rule generating an error.",2,null],[3,"Node","","Stores information about a node.",null,null],[12,"name","","The name of the node.",3,null],[12,"body","","The body of the node.",3,null],[12,"debug_id","","A debug id to track down the rule generating an error.",3,null],[3,"Optional","","Stores information about optional.",null,null],[12,"args","","The optional rules.",4,null],[12,"debug_id","","A debug id to track down the rule generating an error.",4,null],[3,"Sequence","","Stores information about sequence.",null,null],[12,"args","","The sequential rules.",5,null],[12,"debug_id","","A debug id to track down the rule generating an error.",5,null],[3,"SeparatedBy","","Stores inforamtion about separated by.",null,null],[12,"rule","","The rule to separate.",6,null],[12,"by","","The rule to separate by.",6,null],[12,"optional","","Whether the rule must occur at least once.",6,null],[12,"allow_trail","","Whether the rule can end with separator.",6,null],[12,"debug_id","","A debug id to track down the rule generating an error.",6,null],[3,"UntilAnyOrWhitespace","","Stores information about reading until whitespace or any of some character.",null,null],[12,"any_characters","","The characters to stop at.",7,null],[12,"optional","","Whether empty data is accepted or not.",7,null],[12,"property","","The property to store read text.",7,null],[12,"debug_id","","A debug id to track down the rule generating an error.",7,null],[3,"Text","","Stores information about text.",null,null],[12,"allow_empty","","Whether to allow empty string.",8,null],[12,"property","","Which property to set if text is read.",8,null],[12,"debug_id","","A debug id to track down the rule generating an error.",8,null],[3,"Number","","Contains information about number.",null,null],[12,"property","","The property to set.",9,null],[12,"debug_id","","A debug id to track down the rule generating an error.",9,null],[3,"Lines","","Stores information about lines.",null,null],[12,"rule","","The rule to read lines.\nThis can be a multi-line rule.",10,null],[12,"debug_id","","A debug id to track down the rule generating an error.",10,null],[3,"Tokenizer","","Stores all the meta data sequentially.",null,null],[12,"tokens","","The read tokens.",11,null],[3,"TokenizerState","","Stores the number of tokens received.",null,null],[12,"0","","",12,null],[4,"ParseError","","Errors reporting expected values.",null,null],[13,"NotSupported","","Not supported.",13,null],[13,"ExpectedWhitespace","","Whitespace is required.",13,null],[13,"ExpectedSomething","","Something is required.",13,null],[13,"ExpectedNumber","","Expected number.",13,null],[13,"ParseFloatError","","Error when parsing float.",13,null],[13,"ExpectedText","","Expected text.",13,null],[13,"EmptyTextNotAllowed","","Empty text not allowed.",13,null],[13,"ParseStringError","","Invalid string format.",13,null],[13,"ExpectedToken","","Expected token.",13,null],[13,"InvalidRule","","An invalid rule.",13,null],[4,"NodeRef","","A node reference.",null,null],[13,"Name","","Points to a node by name.",14,null],[13,"Ref","","Reference to node.\nThe `bool` flag is used to prevent multiple visits when updating.",14,null],[4,"NodeVisit","","Tells whether a node is visited when updated.",null,null],[13,"Unvisited","","The node is not being visited.",15,null],[13,"Visited","","The node is being visited.",15,null],[4,"Rule","","A rule describes how some section of a document should be parsed.",null,null],[13,"Whitespace","","Read whitespace.",16,null],[13,"Token","","Match against a token.",16,null],[13,"UntilAnyOrWhitespace","","Read until any or whitespace.",16,null],[13,"Text","","Read text.",16,null],[13,"Number","","Read number.",16,null],[13,"Select","","Select one of the sub rules.\nIf the first one does not succeed, try another and so on.\nIf all sub rules fail, then the rule fails.",16,null],[13,"Sequence","","Run each sub rule in sequence.\nIf any sub rule fails, the rule fails.",16,null],[13,"SeparatedBy","","Repeat rule separated by another rule.",16,null],[13,"Lines","","Repeat rule separated by one or more lines.",16,null],[13,"Node","","Read node.",16,null],[13,"Optional","","Read optional.",16,null],[4,"MetaData","","Represents meta data.",null,null],[13,"StartNode","","Starts node.",17,null],[13,"EndNode","","Ends node.",17,null],[13,"Bool","","Sets bool property.",17,null],[13,"F64","","Sets f64 property.",17,null],[13,"String","","Sets string property.",17,null],[11,"eq","","",13,null],[11,"ne","","",13,null],[11,"fmt","","",13,null],[11,"fmt","","",13,null],[11,"new","","Creates a new error handler for standard error output.",18,{"inputs":[{"name":"str"}],"output":{"name":"parsestderr"}}],[11,"error","","",18,null],[11,"parse","","Parses token.\nIf the token is linked to a property,\nthe property will be set.\nIf the meta reader fails setting the property the error is handled.\nIf the token is not linked to any property,\nthe same state will be returned.",1,null],[11,"parse","","Parse whitespace.\nIf whitespace is required and no whitespace is found,\nan error will be reported.",0,null],[11,"parse","","Parses select.",2,null],[11,"parse","","Parses node.",3,null],[11,"parse","","Parse optional.\nReturns the old state if any sub rule fails.",4,null],[11,"parse","","Parses sequence.\nFails if any sub rule fails.",5,null],[11,"parse","","Parses rule repeatedly separated by another rule.",6,null],[11,"parse","","Parses until whitespace or any specified characters.",7,null],[11,"parse","","Parses text.",8,null],[11,"parse","","Parses number.",9,null],[11,"parse","","Parses rule separated by one or more lines.\nIgnores lines that only contain whitespace characters.",10,null],[11,"parse","","Parses rule.",16,null],[11,"update_refs","","Updates replacing names with the references.",16,null],[11,"new","","Creates a new tokenizer.",11,{"inputs":[],"output":{"name":"tokenizer"}}],[11,"data","","Reads meta data.",11,null],[11,"eq","","",12,null],[11,"ne","","",12,null],[11,"cmp","","",12,null],[11,"partial_cmp","","",12,null],[11,"lt","","",12,null],[11,"le","","",12,null],[11,"gt","","",12,null],[11,"ge","","",12,null],[11,"fmt","","",12,null],[11,"clone","","",12,null],[11,"new","","Creates a new tokenizer state.",12,{"inputs":[],"output":{"name":"tokenizerstate"}}],[6,"DebugId","","The type of debug id used to track down errors in rules.",null,null],[6,"ParseResult","","A parse result succeeds with a new state,\nplus an optional error to replace other errors if it is deeper.\nThe deepest error is likely the most useful.",null,null],[8,"ParseErrorHandler","","Implemented by error handlers.",null,null],[10,"error","","Report an error.",19,null],[11,"fmt","","",17,null],[11,"clone","","",17,null],[11,"eq","","",17,null],[11,"ne","","",17,null]],"paths":[[3,"Whitespace"],[3,"Token"],[3,"Select"],[3,"Node"],[3,"Optional"],[3,"Sequence"],[3,"SeparatedBy"],[3,"UntilAnyOrWhitespace"],[3,"Text"],[3,"Number"],[3,"Lines"],[3,"Tokenizer"],[3,"TokenizerState"],[4,"ParseError"],[4,"NodeRef"],[4,"NodeVisit"],[4,"Rule"],[4,"MetaData"],[3,"ParseStdErr"],[8,"ParseErrorHandler"]]}; initSearch(searchIndex);