00001 var LazyWrapper = require('./_LazyWrapper'), 00002 arrayPush = require('./_arrayPush'), 00003 arrayReduce = require('./_arrayReduce'); 00004 00015 function baseWrapperValue(value, actions) { 00016 var result = value; 00017 if (result instanceof LazyWrapper) { 00018 result = result.value(); 00019 } 00020 return arrayReduce(actions, function(result, action) { 00021 return action.func.apply(action.thisArg, arrayPush([result], action.args)); 00022 }, result); 00023 } 00024 00025 module.exports = baseWrapperValue;