[d24f17c] | 1 | import _curry1 from "./internal/_curry1.js";
|
---|
| 2 | import _toString from "./internal/_toString.js";
|
---|
| 3 | /**
|
---|
| 4 | * Returns the string representation of the given value. `eval`'ing the output
|
---|
| 5 | * should result in a value equivalent to the input value. Many of the built-in
|
---|
| 6 | * `toString` methods do not satisfy this requirement.
|
---|
| 7 | *
|
---|
| 8 | * If the given value is an `[object Object]` with a `toString` method other
|
---|
| 9 | * than `Object.prototype.toString`, this method is invoked with no arguments
|
---|
| 10 | * to produce the return value. This means user-defined constructor functions
|
---|
| 11 | * can provide a suitable `toString` method. For example:
|
---|
| 12 | *
|
---|
| 13 | * function Point(x, y) {
|
---|
| 14 | * this.x = x;
|
---|
| 15 | * this.y = y;
|
---|
| 16 | * }
|
---|
| 17 | *
|
---|
| 18 | * Point.prototype.toString = function() {
|
---|
| 19 | * return 'new Point(' + this.x + ', ' + this.y + ')';
|
---|
| 20 | * };
|
---|
| 21 | *
|
---|
| 22 | * R.toString(new Point(1, 2)); //=> 'new Point(1, 2)'
|
---|
| 23 | *
|
---|
| 24 | * @func
|
---|
| 25 | * @memberOf R
|
---|
| 26 | * @since v0.14.0
|
---|
| 27 | * @category String
|
---|
| 28 | * @sig * -> String
|
---|
| 29 | * @param {*} val
|
---|
| 30 | * @return {String}
|
---|
| 31 | * @example
|
---|
| 32 | *
|
---|
| 33 | * R.toString(42); //=> '42'
|
---|
| 34 | * R.toString('abc'); //=> '"abc"'
|
---|
| 35 | * R.toString([1, 2, 3]); //=> '[1, 2, 3]'
|
---|
| 36 | * R.toString({foo: 1, bar: 2, baz: 3}); //=> '{"bar": 2, "baz": 3, "foo": 1}'
|
---|
| 37 | * R.toString(new Date('2001-02-03T04:05:06Z')); //=> 'new Date("2001-02-03T04:05:06.000Z")'
|
---|
| 38 | */
|
---|
| 39 |
|
---|
| 40 | var toString =
|
---|
| 41 | /*#__PURE__*/
|
---|
| 42 | _curry1(function toString(val) {
|
---|
| 43 | return _toString(val, []);
|
---|
| 44 | });
|
---|
| 45 |
|
---|
| 46 | export default toString; |
---|