var searchIndex = {}; searchIndex["liquid"] = {"doc":"The Liquid templating language for Rust","items":[[3,"Context","liquid","",null,null],[12,"filters","","",0,null],[3,"Template","","",null,null],[12,"elements","","",1,null],[3,"LiquidOptions","","Options that liquid::parse takes",null,null],[12,"blocks","","Holds all custom block-size tags",2,null],[12,"tags","","Holds all custom tags",2,null],[12,"file_system","","The path to which paths in include tags should be relative to",2,null],[4,"Value","","An enum to represent different value types",null,null],[13,"Num","","",3,null],[13,"Str","","",3,null],[13,"Object","","",3,null],[13,"Array","","",3,null],[13,"Bool","","",3,null],[4,"Error","","",null,null],[13,"Lexer","","",4,null],[13,"Parser","","",4,null],[13,"Render","","",4,null],[13,"Filter","","",4,null],[13,"Other","","",4,null],[13,"Io","","",4,null],[4,"FilterError","","",null,null],[13,"InvalidType","","",5,null],[13,"InvalidArgumentCount","","",5,null],[13,"InvalidArgument","","",5,null],[4,"Token","","",null,null],[13,"Pipe","","",6,null],[13,"Dot","","",6,null],[13,"Colon","","",6,null],[13,"Comma","","",6,null],[13,"OpenSquare","","",6,null],[13,"CloseSquare","","",6,null],[13,"OpenRound","","",6,null],[13,"CloseRound","","",6,null],[13,"Question","","",6,null],[13,"Dash","","",6,null],[13,"Assignment","","",6,null],[13,"Identifier","","",6,null],[13,"StringLiteral","","",6,null],[13,"NumberLiteral","","",6,null],[13,"BooleanLiteral","","",6,null],[13,"DotDot","","",6,null],[13,"Comparison","","",6,null],[13,"Or","","",6,null],[5,"parse","","Parses a liquid template, returning a Template object.\n# Examples",null,{"inputs":[{"name":"str"},{"name":"liquidoptions"}],"output":{"name":"result"}}],[0,"lexer","","Lexer",null,null],[4,"Element","liquid::lexer","",null,null],[13,"Expression","","",7,null],[13,"Tag","","",7,null],[13,"Raw","","",7,null],[5,"tokenize","","",null,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[5,"granularize","","",null,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"eq","","",7,null],[11,"ne","","",7,null],[11,"fmt","","",7,null],[11,"clone","","",7,null],[0,"parser","liquid","Parser",null,null],[3,"BlockSplit","liquid::parser","Describes the optional trailing part of a block split.",null,null],[12,"delimiter","","",8,null],[12,"args","","",8,null],[12,"trailing","","",8,null],[5,"parse","","Parses the provided elements into a number of Renderable items\nThis is the internal version of parse that accepts Elements tokenized\nby `lexer::tokenize` and does not register built-in blocks. The main use\nfor this function is for writing custom blocks.",null,null],[5,"parse_output","","Creates an Output, a wrapper around values, variables and filters\nused internally, from a list of Tokens. This is mostly useful\nfor correctly parsing complex expressions with filters.",null,null],[5,"expect","","Confirm that the next token in a token stream is what you want it\nto be. The token iterator is moved to the next token in the stream.",null,{"inputs":[{"name":"t"},{"name":"token"}],"output":{"name":"result"}}],[5,"consume_value_token","","Extracts a token from the token stream that can be used to express a\nvalue. For our purposes, this is either a string literal, number literal\nor an identifier that might refer to a variable.",null,{"inputs":[{"name":"iter"}],"output":{"name":"result"}}],[5,"value_token","","Recognises a value token, returning an error if a non-value token\nis presented.",null,{"inputs":[{"name":"token"}],"output":{"name":"result"}}],[5,"split_block","","A sub-block aware splitter that will only split the token stream\nwhen it finds a delimter at the top level of the token stream,\nignoring any it finds in nested blocks.",null,null],[11,"eq","liquid","",6,null],[11,"ne","","",6,null],[11,"fmt","","",6,null],[11,"clone","","",6,null],[11,"fmt","","",6,null],[11,"fmt","","",4,null],[11,"parser","","",4,{"inputs":[{"name":"str"},{"name":"option"}],"output":{"name":"result"}}],[11,"renderer","","",4,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"from","","",4,{"inputs":[{"name":"string"}],"output":{"name":"error"}}],[11,"from","","",4,{"inputs":[{"name":"str"}],"output":{"name":"error"}}],[11,"from","","",4,{"inputs":[{"name":"filtererror"}],"output":{"name":"error"}}],[11,"from","","",4,{"inputs":[{"name":"error"}],"output":{"name":"error"}}],[11,"fmt","","",4,null],[11,"description","","",4,null],[11,"cause","","",4,null],[11,"render","","",1,null],[11,"new","","",1,{"inputs":[{"name":"vec"}],"output":{"name":"template"}}],[11,"eq","","",5,null],[11,"ne","","",5,null],[11,"fmt","","",5,null],[11,"invalid_type","","",5,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"fmt","","",5,null],[11,"description","","",5,null],[11,"fmt","","",3,null],[11,"clone","","",3,null],[11,"str","","Shorthand function to create Value::Str from a string slice.",3,{"inputs":[{"name":"str"}],"output":{"name":"value"}}],[11,"as_str","","",3,null],[11,"from_token","","Parses a token that can possibly represent a Value\nto said Value. Returns an Err if the token can not\nbe interpreted as a Value.",3,{"inputs":[{"name":"token"}],"output":{"name":"result"}}],[11,"eq","","",3,null],[11,"partial_cmp","","",3,null],[11,"lt","","",3,null],[11,"le","","",3,null],[11,"gt","","",3,null],[11,"ge","","",3,null],[11,"to_string","","",3,null],[11,"render","","",3,null],[11,"default","","",0,{"inputs":[],"output":{"name":"context"}}],[11,"new","","Creates a new, empty rendering context.",0,{"inputs":[],"output":{"name":"context"}}],[11,"with_values","","",0,{"inputs":[{"name":"hashmap"}],"output":{"name":"context"}}],[11,"with_filters","","",0,{"inputs":[{"name":"hashmap"}],"output":{"name":"context"}}],[11,"with_values_and_filters","","",0,{"inputs":[{"name":"hashmap"},{"name":"hashmap"}],"output":{"name":"context"}}],[11,"cycle_element","","",0,null],[11,"maybe_add_filter","","Only add the given filter to the context if a filter with this name doesn't already exist.",0,null],[11,"add_filter","","",0,null],[11,"get_filter","","",0,null],[11,"interrupted","","",0,null],[11,"set_interrupt","","Sets the interrupt state. Any previous state is obliterated.",0,null],[11,"pop_interrupt","","Fetches and clears the interrupt state.",0,null],[11,"run_in_scope","","Sets up a new stack frame, executes the supplied function and then\ntears the stack frame down before returning the function's result\nto the caller.",0,null],[11,"get_val","","Gets a value from the rendering context. The name value can be a\ndot-separated path to a value. A value will only be returned if\neach link in the chain (excluding the final name) refers to a\nvalue of type Object.",0,null],[11,"set_val","","Sets a value in the global context.",0,null],[11,"evaluate","","Translates a Token to a Value, looking it up in the context if\nnecessary",0,null],[11,"set_local_val","","Sets a value to the rendering context.\nNote that it needs to be wrapped in a liquid::Value.",0,null],[6,"Tag","","A trait for creating custom tags. This is a simple type alias for a function.",null,null],[6,"Block","","A trait for creating custom custom block-size tags (`{% if something %}{% endif %}`).\nThis is a simple type alias for a function.",null,null],[8,"Renderable","","Any object (tag/block) that can be rendered by liquid must implement this trait.",null,null],[10,"render","","Renders the Renderable instance given a Liquid context.\nThe Result that is returned signals if there was an error rendering,\nthe Option<String> that is wrapped by the Result will be None if\nthe render has run successfully but there is no content to render.",9,null],[11,"default","","",2,{"inputs":[],"output":{"name":"liquidoptions"}}],[11,"with_known_blocks","","Creates a LiquidOptions instance, pre-seeded with all known\ntags and blocks.",2,{"inputs":[],"output":{"name":"liquidoptions"}}],[11,"register_known_blocks","","Registers all known tags and blocks in an existing options\nstruct",2,null],[11,"register_block","","Inserts a new custom block into the options object",2,null],[11,"register_tag","","Inserts a new custom tag into the options object",2,null]],"paths":[[3,"Context"],[3,"Template"],[3,"LiquidOptions"],[4,"Value"],[4,"Error"],[4,"FilterError"],[4,"Token"],[4,"Element"],[3,"BlockSplit"],[8,"Renderable"]]}; initSearch(searchIndex);