Class CssSelectorParser


  • public final class CssSelectorParser
    extends java.lang.Object
    Utilities class to parse a CSS selector.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.util.Set<java.lang.String> LEGACY_PSEUDO_ELEMENTS
      Set of legacy pseudo elements (first-line, first-letter, before, after).
      private static java.lang.String SELECTOR_PATTERN_STR
      The pattern string for selectors.
      private static java.util.regex.Pattern selectorPattern
      The pattern for selectors.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      private static void appendPseudoSelector​(java.util.List<ICssSelectorItem> selectorItems, java.lang.String pseudoSelector, java.util.regex.Matcher match, java.lang.String source)
      Resolves a pseudo selector and appends it to list.
      private static java.lang.String handleBracketsOfPseudoSelector​(java.lang.String pseudoSelector, java.util.regex.Matcher match, java.lang.String source)
      Resolves a pseudo selector if it contains brackets.
      static java.util.List<ICssSelectorItem> parseSelectorItems​(java.lang.String selector)
      Parses the selector items.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LEGACY_PSEUDO_ELEMENTS

        private static final java.util.Set<java.lang.String> LEGACY_PSEUDO_ELEMENTS
        Set of legacy pseudo elements (first-line, first-letter, before, after).
      • SELECTOR_PATTERN_STR

        private static final java.lang.String SELECTOR_PATTERN_STR
        The pattern string for selectors.
        See Also:
        Constant Field Values
      • selectorPattern

        private static final java.util.regex.Pattern selectorPattern
        The pattern for selectors.
    • Constructor Detail

      • CssSelectorParser

        private CssSelectorParser()
        Creates a new CssSelectorParser instance.
    • Method Detail

      • parseSelectorItems

        public static java.util.List<ICssSelectorItem> parseSelectorItems​(java.lang.String selector)
        Parses the selector items.
        Parameters:
        selector - the selectors in the form of a String
        Returns:
        the resulting list of ICssSelectorItem
      • appendPseudoSelector

        private static void appendPseudoSelector​(java.util.List<ICssSelectorItem> selectorItems,
                                                 java.lang.String pseudoSelector,
                                                 java.util.regex.Matcher match,
                                                 java.lang.String source)
        Resolves a pseudo selector and appends it to list.
        Parameters:
        selectorItems - list of items to which new selector will be added to
        pseudoSelector - the pseudo selector
        match - the corresponding Matcher.
        source - is the original source
      • handleBracketsOfPseudoSelector

        private static java.lang.String handleBracketsOfPseudoSelector​(java.lang.String pseudoSelector,
                                                                       java.util.regex.Matcher match,
                                                                       java.lang.String source)
        Resolves a pseudo selector if it contains brackets. Updates internal state of Matcher if necessary.
        Parameters:
        pseudoSelector - the pseudo selector
        match - the corresponding Matcher.
        source - is the original source