Separated parser class nodes and began writing compile methods
This commit is contained in:
15
app/imports/parser/compileFunctions/sum.js
Normal file
15
app/imports/parser/compileFunctions/sum.js
Normal file
@@ -0,0 +1,15 @@
|
||||
export default function sum(inputNode) {
|
||||
let node = inputNode.roll();
|
||||
if (node.type === 'numberArray'){
|
||||
let total = node.value.reduce((total, num) => total + num, 0);
|
||||
return new ConstantNode({type: 'number', value: total});
|
||||
} else {
|
||||
let errors = node.errors || [];
|
||||
errors.push(`Could not sum ${node.value}`);
|
||||
return new ConstantNode({
|
||||
type: 'uncompiledNode',
|
||||
value: node.value,
|
||||
errors,
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user