var searchIndex = {}; searchIndex["selectors"] = {"doc":"","items":[[0,"bloom","selectors","Simple counting bloom filters.",null,null],[3,"BloomFilter","selectors::bloom","A counting Bloom filter with 8-bit counters. For now we assume\nthat having two hash functions is enough, but we may revisit that\ndecision later.",null,null],[8,"BloomHash","","",null,null],[10,"bloom_hash","","",0,null],[11,"clone","","",1,null],[11,"new","","Creates a new bloom filter.",1,{"inputs":[],"output":{"name":"bloomfilter"}}],[11,"clear","","",1,null],[11,"insert","","Inserts an item into the bloom filter.",1,null],[11,"remove","","Removes an item from the bloom filter.",1,null],[11,"might_contain","","Check whether the filter might contain an item. This can\nsometimes return true even if the item is not in the filter,\nbut will never return false for items that are actually in the\nfilter.",1,null],[0,"matching","selectors","",null,null],[3,"SelectorMap","selectors::matching","Map element data to Rules whose last simple selector starts with them.",null,null],[3,"Rule","","",null,null],[12,"selector","","",2,null],[12,"declarations","","",2,null],[3,"DeclarationBlock","","A property declaration together with its precedence among rules of equal specificity so that\nwe can sort them.",null,null],[12,"declarations","","",3,null],[12,"source_order","","",3,null],[12,"specificity","","",3,null],[3,"ElementFlags","","Flags set on elements during the matching process.",null,null],[3,"CommonStyleAffectingAttributes","","",null,null],[3,"CommonStyleAffectingAttributeInfo","","",null,null],[12,"atom","","",4,null],[12,"mode","","",4,null],[4,"CommonStyleAffectingAttributeMode","","",null,null],[13,"IsPresent","","",5,null],[13,"IsEqual","","",5,null],[5,"matches","","",null,null],[5,"matches_compound_selector","","Determines whether the given element matches the given single or compound selector.",null,{"inputs":[{"name":"compoundselector"},{"name":"e"},{"name":"option"},{"name":"bool"}],"output":{"name":"bool"}}],[5,"common_style_affecting_attributes","","",null,null],[5,"rare_style_affecting_attributes","","Attributes that, if present, disable style sharing. All legacy HTML attributes must be in\neither this list or `common_style_affecting_attributes`. See the comment in\n`synthesize_presentational_hints_for_legacy_attributes`.",null,null],[5,"matches_simple_selector","","Determines whether the given element matches the given single selector.",null,{"inputs":[{"name":"simpleselector"},{"name":"e"},{"name":"bool"}],"output":{"name":"bool"}}],[7,"SELECTOR_WHITESPACE","","The definition of whitespace per CSS Selectors Level 3 ยง 4.",null,null],[7,"RECOMMENDED_SELECTOR_BLOOM_FILTER_SIZE","","",null,null],[17,"HAS_SLOW_SELECTOR","","When a child is added or removed from this element, all the children must be\nrestyled, because they may match :nth-last-child, :last-of-type,\n:nth-last-of-type, or :only-of-type.",null,null],[17,"HAS_SLOW_SELECTOR_LATER_SIBLINGS","","When a child is added or removed from this element, any later children must be\nrestyled, because they may match :nth-child, :first-of-type, or :nth-of-type.",null,null],[17,"HAS_EDGE_CHILD_SELECTOR","","When a child is added or removed from this element, the first and last children\nmust be restyled, because they may match :first-child, :last-child, or\n:only-child.",null,null],[17,"HIDDEN_ATTRIBUTE","","",null,null],[17,"NO_WRAP_ATTRIBUTE","","",null,null],[17,"ALIGN_LEFT_ATTRIBUTE","","",null,null],[17,"ALIGN_CENTER_ATTRIBUTE","","",null,null],[17,"ALIGN_RIGHT_ATTRIBUTE","","",null,null],[11,"new","","",6,{"inputs":[],"output":{"name":"selectormap"}}],[11,"get_all_matching_rules","","Append to `rule_list` all Rules in `self` that match element.",6,null],[11,"insert","","Insert rule into the correct hash.\nOrder in which to try: id_hash, class_hash, local_name_hash, universal_rules.",6,null],[11,"fmt","","",3,null],[11,"clone","","",3,null],[11,"clone","","",2,null],[11,"from_declarations","","",3,{"inputs":[{"name":"arc"}],"output":{"name":"declarationblock"}}],[11,"hash","","",7,null],[11,"cmp","","",7,null],[11,"partial_cmp","","",7,null],[11,"lt","","",7,null],[11,"le","","",7,null],[11,"gt","","",7,null],[11,"ge","","",7,null],[11,"clone","","",7,null],[11,"eq","","",7,null],[11,"ne","","",7,null],[11,"fmt","","",7,null],[11,"empty","","Returns an empty set of flags.",7,{"inputs":[],"output":{"name":"elementflags"}}],[11,"all","","Returns the set containing all flags.",7,{"inputs":[],"output":{"name":"elementflags"}}],[11,"bits","","Returns the raw value of the flags currently stored.",7,null],[11,"from_bits","","Convert from underlying bit representation, unless that\nrepresentation contains bits that do not correspond to a flag.",7,{"inputs":[{"name":"u8"}],"output":{"name":"option"}}],[11,"from_bits_truncate","","Convert from underlying bit representation, dropping any bits\nthat do not correspond to flags.",7,{"inputs":[{"name":"u8"}],"output":{"name":"elementflags"}}],[11,"is_empty","","Returns `true` if no flags are currently stored.",7,null],[11,"is_all","","Returns `true` if all flags are currently set.",7,null],[11,"intersects","","Returns `true` if there are flags common to both `self` and `other`.",7,null],[11,"contains","","Returns `true` all of the flags in `other` are contained within `self`.",7,null],[11,"insert","","Inserts the specified flags in-place.",7,null],[11,"remove","","Removes the specified flags in-place.",7,null],[11,"toggle","","Toggles the specified flags in-place.",7,null],[11,"bitor","","Returns the union of the two sets of flags.",7,null],[11,"bitxor","","Returns the left flags, but with all the right flags toggled.",7,null],[11,"bitand","","Returns the intersection between the two sets of flags.",7,null],[11,"sub","","Returns the set difference of the two sets of flags.",7,null],[11,"not","","Returns the complement of this set of flags.",7,null],[11,"from_iter","","",7,{"inputs":[{"name":"t"}],"output":{"name":"elementflags"}}],[11,"hash","","",8,null],[11,"cmp","","",8,null],[11,"partial_cmp","","",8,null],[11,"lt","","",8,null],[11,"le","","",8,null],[11,"gt","","",8,null],[11,"ge","","",8,null],[11,"clone","","",8,null],[11,"eq","","",8,null],[11,"ne","","",8,null],[11,"fmt","","",8,null],[11,"empty","","Returns an empty set of flags.",8,{"inputs":[],"output":{"name":"commonstyleaffectingattributes"}}],[11,"all","","Returns the set containing all flags.",8,{"inputs":[],"output":{"name":"commonstyleaffectingattributes"}}],[11,"bits","","Returns the raw value of the flags currently stored.",8,null],[11,"from_bits","","Convert from underlying bit representation, unless that\nrepresentation contains bits that do not correspond to a flag.",8,{"inputs":[{"name":"u8"}],"output":{"name":"option"}}],[11,"from_bits_truncate","","Convert from underlying bit representation, dropping any bits\nthat do not correspond to flags.",8,{"inputs":[{"name":"u8"}],"output":{"name":"commonstyleaffectingattributes"}}],[11,"is_empty","","Returns `true` if no flags are currently stored.",8,null],[11,"is_all","","Returns `true` if all flags are currently set.",8,null],[11,"intersects","","Returns `true` if there are flags common to both `self` and `other`.",8,null],[11,"contains","","Returns `true` all of the flags in `other` are contained within `self`.",8,null],[11,"insert","","Inserts the specified flags in-place.",8,null],[11,"remove","","Removes the specified flags in-place.",8,null],[11,"toggle","","Toggles the specified flags in-place.",8,null],[11,"bitor","","Returns the union of the two sets of flags.",8,null],[11,"bitxor","","Returns the left flags, but with all the right flags toggled.",8,null],[11,"bitand","","Returns the intersection between the two sets of flags.",8,null],[11,"sub","","Returns the set difference of the two sets of flags.",8,null],[11,"not","","Returns the complement of this set of flags.",8,null],[11,"from_iter","","",8,{"inputs":[{"name":"t"}],"output":{"name":"commonstyleaffectingattributes"}}],[11,"clone","","",5,null],[0,"parser","selectors","",null,null],[3,"ParserContext","selectors::parser","",null,null],[12,"in_user_agent_stylesheet","","",9,null],[12,"default_namespace","","",9,null],[12,"namespace_prefixes","","",9,null],[3,"Selector","","",null,null],[12,"compound_selectors","","",10,null],[12,"pseudo_element","","",10,null],[12,"specificity","","",10,null],[3,"CompoundSelector","","",null,null],[12,"simple_selectors","","",11,null],[12,"next","","",11,null],[3,"LocalName","","",null,null],[12,"name","","",12,null],[12,"lower_name","","",12,null],[3,"AttrSelector","","",null,null],[12,"name","","",13,null],[12,"lower_name","","",13,null],[12,"namespace","","",13,null],[4,"Combinator","","",null,null],[13,"Child","","",14,null],[13,"Descendant","","",14,null],[13,"NextSibling","","",14,null],[13,"LaterSibling","","",14,null],[4,"SimpleSelector","","",null,null],[13,"ID","","",15,null],[13,"Class","","",15,null],[13,"LocalName","","",15,null],[13,"Namespace","","",15,null],[13,"AttrExists","","",15,null],[13,"AttrEqual","","",15,null],[13,"AttrIncludes","","",15,null],[13,"AttrDashMatch","","",15,null],[13,"AttrPrefixMatch","","",15,null],[13,"AttrSubstringMatch","","",15,null],[13,"AttrSuffixMatch","","",15,null],[13,"Negation","","",15,null],[13,"FirstChild","","",15,null],[13,"LastChild","","",15,null],[13,"OnlyChild","","",15,null],[13,"Root","","",15,null],[13,"Empty","","",15,null],[13,"NthChild","","",15,null],[13,"NthLastChild","","",15,null],[13,"NthOfType","","",15,null],[13,"NthLastOfType","","",15,null],[13,"FirstOfType","","",15,null],[13,"LastOfType","","",15,null],[13,"OnlyOfType","","",15,null],[13,"NonTSPseudoClass","","",15,null],[4,"CaseSensitivity","","",null,null],[13,"CaseSensitive","","",16,null],[13,"CaseInsensitive","","",16,null],[4,"NamespaceConstraint","","",null,null],[13,"Any","","",17,null],[13,"Specific","","",17,null],[5,"parse_author_origin_selector_list_from_str","","",null,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[5,"parse_selector_list","","Parse a comma-separated list of Selectors.\naka Selector Group in http://www.w3.org/TR/css3-selectors/#grouping",null,{"inputs":[{"name":"parsercontext"},{"name":"parser"}],"output":{"name":"result"}}],[8,"SelectorImpl","","This trait allows to define the parser implementation in regards\nof pseudo-classes/elements",null,null],[16,"NonTSPseudoClass","","",18,null],[11,"parse_non_ts_pseudo_class","","This function can return an "Err" pseudo-element in order to support CSS2.1\npseudo-elements.",18,{"inputs":[{"name":"parsercontext"},{"name":"str"}],"output":{"name":"result"}}],[11,"parse_non_ts_functional_pseudo_class","","",18,{"inputs":[{"name":"parsercontext"},{"name":"str"},{"name":"parser"}],"output":{"name":"result"}}],[16,"PseudoElement","","",18,null],[11,"parse_pseudo_element","","",18,{"inputs":[{"name":"parsercontext"},{"name":"str"}],"output":{"name":"result"}}],[11,"new","","",9,{"inputs":[],"output":{"name":"parsercontext"}}],[11,"fmt","","",10,null],[11,"clone","","",10,null],[11,"eq","","",10,null],[11,"ne","","",10,null],[11,"fmt","","",11,null],[11,"clone","","",11,null],[11,"eq","","",11,null],[11,"ne","","",11,null],[11,"fmt","","",14,null],[11,"clone","","",14,null],[11,"eq","","",14,null],[11,"fmt","","",15,null],[11,"hash","","",15,null],[11,"clone","","",15,null],[11,"eq","","",15,null],[11,"ne","","",15,null],[11,"fmt","","",16,null],[11,"hash","","",16,null],[11,"clone","","",16,null],[11,"eq","","",16,null],[11,"fmt","","",12,null],[11,"hash","","",12,null],[11,"clone","","",12,null],[11,"eq","","",12,null],[11,"ne","","",12,null],[11,"fmt","","",13,null],[11,"hash","","",13,null],[11,"clone","","",13,null],[11,"eq","","",13,null],[11,"ne","","",13,null],[11,"fmt","","",17,null],[11,"hash","","",17,null],[11,"clone","","",17,null],[11,"eq","","",17,null],[11,"ne","","",17,null],[6,"HashMap","selectors","",null,null],[8,"Element","","",null,null],[16,"Impl","","",19,null],[10,"parent_element","","",19,null],[10,"first_child_element","","",19,null],[10,"last_child_element","","",19,null],[10,"prev_sibling_element","","",19,null],[10,"next_sibling_element","","",19,null],[10,"is_html_element_in_html_document","","",19,null],[10,"get_local_name","","",19,null],[10,"get_namespace","","",19,null],[10,"match_non_ts_pseudo_class","","",19,null],[10,"get_id","","",19,null],[10,"has_class","","",19,null],[10,"match_attr","","",19,null],[10,"is_empty","","Returns whether this element matches `:empty`.",19,null],[10,"is_root","","Returns whether this element matches `:root`,\ni.e. whether it is the root element of a document.",19,null],[10,"each_class","","",19,null],[11,"insert_flags","","Add flags to the element. See the `ElementFlags` docs for details.",19,null],[11,"insert_flags","","Add flags to the element. See the `ElementFlags` docs for details.",19,null]],"paths":[[8,"BloomHash"],[3,"BloomFilter"],[3,"Rule"],[3,"DeclarationBlock"],[3,"CommonStyleAffectingAttributeInfo"],[4,"CommonStyleAffectingAttributeMode"],[3,"SelectorMap"],[3,"ElementFlags"],[3,"CommonStyleAffectingAttributes"],[3,"ParserContext"],[3,"Selector"],[3,"CompoundSelector"],[3,"LocalName"],[3,"AttrSelector"],[4,"Combinator"],[4,"SimpleSelector"],[4,"CaseSensitivity"],[4,"NamespaceConstraint"],[8,"SelectorImpl"],[8,"Element"]]}; initSearch(searchIndex);