MCPcopy Create free account
hub / github.com/codemix/graph / peg$parseArithmeticExpression

Function peg$parseArithmeticExpression

packages/graph/src/grammar.js:9465–9529  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

9463 }
9464
9465 function peg$parseArithmeticExpression() {
9466 let s0, s1, s2, s3, s4, s5, s6, s7;
9467
9468 s0 = peg$currPos;
9469 s1 = peg$parseMultiplicativeExpression();
9470 if (s1 !== peg$FAILED) {
9471 s2 = [];
9472 s3 = peg$currPos;
9473 s4 = peg$parse_();
9474 s5 = input.charAt(peg$currPos);
9475 if (peg$r3.test(s5)) {
9476 peg$currPos++;
9477 } else {
9478 s5 = peg$FAILED;
9479 if (peg$silentFails === 0) { peg$fail(peg$e31); }
9480 }
9481 if (s5 !== peg$FAILED) {
9482 s6 = peg$parse_();
9483 s7 = peg$parseMultiplicativeExpression();
9484 if (s7 !== peg$FAILED) {
9485 s4 = [s4, s5, s6, s7];
9486 s3 = s4;
9487 } else {
9488 peg$currPos = s3;
9489 s3 = peg$FAILED;
9490 }
9491 } else {
9492 peg$currPos = s3;
9493 s3 = peg$FAILED;
9494 }
9495 while (s3 !== peg$FAILED) {
9496 s2.push(s3);
9497 s3 = peg$currPos;
9498 s4 = peg$parse_();
9499 s5 = input.charAt(peg$currPos);
9500 if (peg$r3.test(s5)) {
9501 peg$currPos++;
9502 } else {
9503 s5 = peg$FAILED;
9504 if (peg$silentFails === 0) { peg$fail(peg$e31); }
9505 }
9506 if (s5 !== peg$FAILED) {
9507 s6 = peg$parse_();
9508 s7 = peg$parseMultiplicativeExpression();
9509 if (s7 !== peg$FAILED) {
9510 s4 = [s4, s5, s6, s7];
9511 s3 = s4;
9512 } else {
9513 peg$currPos = s3;
9514 s3 = peg$FAILED;
9515 }
9516 } else {
9517 peg$currPos = s3;
9518 s3 = peg$FAILED;
9519 }
9520 }
9521 peg$savedPos = s0;
9522 s0 = peg$f168(s1, s2);

Calls 5

peg$parse_Function · 0.85
peg$failFunction · 0.85
peg$f168Function · 0.85
pushMethod · 0.45

Tested by

no test coverage detected