Files
react-native-devtools-frontend/node_modules/ramda/es/difference.js
T
Tim van der Lippe 16aca394c5 Update ESLint and related packages
Major update breaking changes:
- ESLint 7.0.0 (https://eslint.org/docs/user-guide/migrating-to-7.0.0) now includes
.eslint.rc.js in its list, which is fine for us. Other changes are not applicable
for us.
- eslint-plugin-mocha (https://github.com/lo1tuma/eslint-plugin-mocha/blob/master/CHANGELOG.md#700-may-13-2020)
drops support for ESLint <7, but this CL updates to 7+. Other changes are
not applicable for us.

DISABLE_THIRD_PARTY_CHECK=Updating ESLint
R=petermarshall@chromium.org

Change-Id: I7760e084ef87f73a92f9ea4e075fb4c065047f5a
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2534873
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
2020-11-13 12:28:15 +00:00

48 lines
1.2 KiB
JavaScript

import _curry2 from "./internal/_curry2.js";
import _Set from "./internal/_Set.js";
/**
* Finds the set (i.e. no duplicates) of all elements in the first list not
* contained in the second list. Objects and Arrays are compared in terms of
* value equality, not reference equality.
*
* @func
* @memberOf R
* @since v0.1.0
* @category Relation
* @sig [*] -> [*] -> [*]
* @param {Array} list1 The first list.
* @param {Array} list2 The second list.
* @return {Array} The elements in `list1` that are not in `list2`.
* @see R.differenceWith, R.symmetricDifference, R.symmetricDifferenceWith, R.without
* @example
*
* R.difference([1,2,3,4], [7,6,5,4,3]); //=> [1,2]
* R.difference([7,6,5,4,3], [1,2,3,4]); //=> [7,6,5]
* R.difference([{a: 1}, {b: 2}], [{a: 1}, {c: 3}]) //=> [{b: 2}]
*/
var difference =
/*#__PURE__*/
_curry2(function difference(first, second) {
var out = [];
var idx = 0;
var firstLen = first.length;
var secondLen = second.length;
var toFilterOut = new _Set();
for (var i = 0; i < secondLen; i += 1) {
toFilterOut.add(second[i]);
}
while (idx < firstLen) {
if (toFilterOut.add(first[idx])) {
out[out.length] = first[idx];
}
idx += 1;
}
return out;
});
export default difference;