| var _curry1 = |
| /*#__PURE__*/ |
| require("./internal/_curry1"); |
| |
| var _isArguments = |
| /*#__PURE__*/ |
| require("./internal/_isArguments"); |
| |
| var _isArray = |
| /*#__PURE__*/ |
| require("./internal/_isArray"); |
| |
| var _isObject = |
| /*#__PURE__*/ |
| require("./internal/_isObject"); |
| |
| var _isString = |
| /*#__PURE__*/ |
| require("./internal/_isString"); |
| /** |
| * Returns the empty value of its argument's type. Ramda defines the empty |
| * value of Array (`[]`), Object (`{}`), String (`''`), and Arguments. Other |
| * types are supported if they define `<Type>.empty`, |
| * `<Type>.prototype.empty` or implement the |
| * [FantasyLand Monoid spec](https://github.com/fantasyland/fantasy-land#monoid). |
| * |
| * Dispatches to the `empty` method of the first argument, if present. |
| * |
| * @func |
| * @memberOf R |
| * @since v0.3.0 |
| * @category Function |
| * @sig a -> a |
| * @param {*} x |
| * @return {*} |
| * @example |
| * |
| * R.empty(Just(42)); //=> Nothing() |
| * R.empty([1, 2, 3]); //=> [] |
| * R.empty('unicorns'); //=> '' |
| * R.empty({x: 1, y: 2}); //=> {} |
| */ |
| |
| |
| var empty = |
| /*#__PURE__*/ |
| _curry1(function empty(x) { |
| return x != null && typeof x['fantasy-land/empty'] === 'function' ? x['fantasy-land/empty']() : x != null && x.constructor != null && typeof x.constructor['fantasy-land/empty'] === 'function' ? x.constructor['fantasy-land/empty']() : x != null && typeof x.empty === 'function' ? x.empty() : x != null && x.constructor != null && typeof x.constructor.empty === 'function' ? x.constructor.empty() : _isArray(x) ? [] : _isString(x) ? '' : _isObject(x) ? {} : _isArguments(x) ? function () { |
| return arguments; |
| }() : void 0 // else |
| ; |
| }); |
| |
| module.exports = empty; |