MCPcopy Index your code
hub / github.com/josdejong/mathjs / parseAddSubtract

Function parseAddSubtract

src/expression/parse.js:1034–1058  ·  view source on GitHub ↗

* add or subtract * @return {Node} node * @private

(state)

Source from the content-addressed store, hash-verified

1032 * @private
1033 */
1034 function parseAddSubtract (state) {
1035 let node, name, fn, params
1036
1037 node = parseMultiplyDivideModulus(state)
1038
1039 const operators = {
1040 '+': 'add',
1041 '-': 'subtract'
1042 }
1043 while (hasOwnProperty(operators, state.token)) {
1044 name = state.token
1045 fn = operators[name]
1046
1047 getTokenSkipNewline(state)
1048 const rightNode = parseMultiplyDivideModulus(state)
1049 if (rightNode.isPercentage) {
1050 params = [node, new OperatorNode('*', 'multiply', [node, rightNode])]
1051 } else {
1052 params = [node, rightNode]
1053 }
1054 node = new OperatorNode(name, fn, params)
1055 }
1056
1057 return node
1058 }
1059
1060 /**
1061 * multiply, divide, modulus

Callers 1

parseRangeFunction · 0.85

Calls 3

hasOwnPropertyFunction · 0.90
getTokenSkipNewlineFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…