remove legacy async api from NodeRecipe

This commit is contained in:
d98762625 2019-03-01 16:56:14 +00:00
parent b48c16b4db
commit 6d219ade2d
2 changed files with 15 additions and 4 deletions

View file

@ -30,6 +30,17 @@ class NodeDish extends Dish {
super(inputOrDish, type);
}
/**
* Apply the inputted operation to the dish.
*
* @param {WrappedOperation} operation the operation to perform
* @param {*} args - any arguments for the operation
* @returns {Dish} a new dish with the result of the operation.
*/
apply(operation, args=null) {
return operation(this.value, args);
}
/**
* alias for get
* @param args see get args

View file

@ -76,14 +76,14 @@ class NodeRecipe {
* @param {NodeDish} dish
* @returns {NodeDish}
*/
async execute(dish) {
return await this.opList.reduce(async (prev, curr) => {
execute(dish) {
return this.opList.reduce((prev, curr) => {
// CASE where opLis item is op and args
if (curr.hasOwnProperty("op") && curr.hasOwnProperty("args")) {
return await curr.op(prev, curr.args);
return curr.op(prev, curr.args);
}
// CASE opList item is just op.
return await curr(prev);
return curr(prev);
}, dish);
}
}