UNPKG

mezzanine

Version:

Fantasy land union types with pattern matching

29 lines (26 loc) 566 B
export function applyStack(stack, data) { var ln = stack.length; if (ln === 0) return data; var history = []; var current = data; for (var i = 0; i < ln; ++i) { var fn = stack[i]; var _val = fn(current); history.length = i + 1; current = history[i] = _val; } return current; } export function getInitialValue(stack, obj) { var val = obj; var succ = true; try { val = applyStack(stack, val); } catch (err) { succ = false; val = err.message; } return { val, succ }; } //# sourceMappingURL=virtual-stack.js.map