MCPcopy Create free account
hub / github.com/estools/esquery / peg$parsehas

Function peg$parsehas

parser.js:2317–2379  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2315 }
2316
2317 function peg$parsehas() {
2318 var s0, s1, s2, s3, s4, s5;
2319
2320 var key = peg$currPos * 32 + 26,
2321 cached = peg$resultsCache[key];
2322
2323 if (cached) {
2324 peg$currPos = cached.nextPos;
2325
2326 return cached.result;
2327 }
2328
2329 s0 = peg$currPos;
2330 if (input.substr(peg$currPos, 5) === peg$c86) {
2331 s1 = peg$c86;
2332 peg$currPos += 5;
2333 } else {
2334 s1 = peg$FAILED;
2335 if (peg$silentFails === 0) { peg$fail(peg$c87); }
2336 }
2337 if (s1 !== peg$FAILED) {
2338 s2 = peg$parse_();
2339 if (s2 !== peg$FAILED) {
2340 s3 = peg$parsehasSelectors();
2341 if (s3 !== peg$FAILED) {
2342 s4 = peg$parse_();
2343 if (s4 !== peg$FAILED) {
2344 if (input.charCodeAt(peg$currPos) === 41) {
2345 s5 = peg$c69;
2346 peg$currPos++;
2347 } else {
2348 s5 = peg$FAILED;
2349 if (peg$silentFails === 0) { peg$fail(peg$c70); }
2350 }
2351 if (s5 !== peg$FAILED) {
2352 peg$savedPos = s0;
2353 s1 = peg$c88(s3);
2354 s0 = s1;
2355 } else {
2356 peg$currPos = s0;
2357 s0 = peg$FAILED;
2358 }
2359 } else {
2360 peg$currPos = s0;
2361 s0 = peg$FAILED;
2362 }
2363 } else {
2364 peg$currPos = s0;
2365 s0 = peg$FAILED;
2366 }
2367 } else {
2368 peg$currPos = s0;
2369 s0 = peg$FAILED;
2370 }
2371 } else {
2372 peg$currPos = s0;
2373 s0 = peg$FAILED;
2374 }

Callers 1

peg$parseatomFunction · 0.85

Calls 4

peg$failFunction · 0.85
peg$parse_Function · 0.85
peg$parsehasSelectorsFunction · 0.85
peg$c88Function · 0.85

Tested by

no test coverage detected