MCPcopy Create free account
hub / github.com/jhy/jsoup / parseSimpleSequence

Method parseSimpleSequence

src/main/java/org/jsoup/select/QueryParser.java:126–149  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

124 }
125
126 Evaluator parseSimpleSequence() {
127 // SimpleSequence ::= TypeSelector? ( Hash | Class | Pseudo )*
128 Evaluator left = null;
129 tq.consumeWhitespace();
130
131 // one optional type selector
132 if (tq.matchesWord() || tq.matches("*|"))
133 left = byTag();
134 else if (tq.matchChomp('*'))
135 left = new Evaluator.AllElements();
136
137 // zero or more subclasses (#, ., [)
138 while(true) {
139 Evaluator right = parseSubclass();
140 if (right != null) {
141 left = and(left, right);
142 }
143 else break; // no more simple tokens
144 }
145
146 if (left == null)
147 throw new Selector.SelectorParseException("Could not parse query '%s': unexpected token at '%s'", query, tq.remainder());
148 return left;
149 }
150
151 static Evaluator combinator(Evaluator left, char combinator, Evaluator right) {
152 switch (combinator) {

Callers 1

parseSelectorMethod · 0.95

Calls 8

byTagMethod · 0.95
parseSubclassMethod · 0.95
andMethod · 0.95
consumeWhitespaceMethod · 0.80
matchesWordMethod · 0.80
matchChompMethod · 0.80
remainderMethod · 0.80
matchesMethod · 0.45

Tested by

no test coverage detected