Skip to content

Commit 8a20f3c

Browse files
committed
chore@small
1 parent 657ef80 commit 8a20f3c

File tree

12 files changed

+88
-141
lines changed

12 files changed

+88
-141
lines changed

README.md

Lines changed: 14 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5572,7 +5572,7 @@ import { filter } from './filter.js'
55725572
import { includes } from './includes.js'
55735573

55745574
export function intersection(listA) {
5575-
return listB => filter(x => includes(x)(listA))(listB)
5575+
return listB => filter(includes(listA))(listB)
55765576
}
55775577
```
55785578

@@ -11637,13 +11637,13 @@ symmetricDifference<T>(x: T[]): (y: T[]) => T[];
1163711637

1163811638
```javascript
1163911639
import { filter } from './filter.js'
11640-
import { includes } from './includes.js'
11640+
import { excludes } from './excludes.js'
1164111641

11642-
export function symmetricDifference(x) {
11643-
return y => [
11644-
...filter(value => !includes(value)(y))(x),
11645-
...filter(value => !includes(value)(x))(y),
11646-
]
11642+
export function symmetricDifference(listA) {
11643+
return listB => [
11644+
...filter(excludes(listB))(listA),
11645+
...filter(excludes(listA))(listB),
11646+
]
1164711647
}
1164811648
```
1164911649

@@ -11656,7 +11656,7 @@ export function symmetricDifference(x) {
1165611656
```javascript
1165711657
import { symmetricDifference } from './symmetricDifference.js'
1165811658

11659-
test('symmetricDifference', () => {
11659+
test.only('symmetricDifference', () => {
1166011660
const list1 = [1, 2, 3, 4]
1166111661
const list2 = [3, 4, 5, 6]
1166211662
expect(symmetricDifference(list1)(list2)).toEqual([1, 2, 5, 6])
@@ -12776,21 +12776,13 @@ union<T>(x: T[]): (y: T[]) => T[];
1277612776
<summary><strong>R.union</strong> source</summary>
1277712777

1277812778
```javascript
12779-
import { cloneList } from './_internals/cloneList.js'
12780-
import { includes } from './includes.js'
12781-
12782-
export function union(x) {
12783-
return y => {
12784-
const toReturn = cloneList(x)
12785-
12786-
y.forEach(yInstance => {
12787-
if (!includes(yInstance)(x)) {
12788-
toReturn.push(yInstance)
12789-
}
12790-
})
12779+
import { excludes } from './excludes.js'
1279112780

12792-
return toReturn
12793-
}
12781+
export function union(listA) {
12782+
return listB => [
12783+
...listA,
12784+
...listB.filter(excludes(listA)),
12785+
]
1279412786
}
1279512787
```
1279612788

dist/rambda.cjs

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -951,7 +951,7 @@ function interpolate(input) {
951951
}
952952

953953
function intersection(listA) {
954-
return listB => filter(x => includes(x)(listA))(listB)
954+
return listB => filter(includes(listA))(listB)
955955
}
956956

957957
function _includesWith(pred, x, list) {
@@ -1669,11 +1669,11 @@ function splitEvery(sliceLength) {
16691669
}
16701670
}
16711671

1672-
function symmetricDifference(x) {
1673-
return y => [
1674-
...filter(value => !includes(value)(y))(x),
1675-
...filter(value => !includes(value)(x))(y),
1676-
]
1672+
function symmetricDifference(listA) {
1673+
return listB => [
1674+
...filter(excludes(listB))(listA),
1675+
...filter(excludes(listA))(listB),
1676+
]
16771677
}
16781678

16791679
function tail(listOrString) {
@@ -1770,18 +1770,11 @@ function tryCatch(fn, fallback) {
17701770
}
17711771
}
17721772

1773-
function union(x) {
1774-
return y => {
1775-
const toReturn = cloneList(x);
1776-
1777-
y.forEach(yInstance => {
1778-
if (!includes(yInstance)(x)) {
1779-
toReturn.push(yInstance);
1780-
}
1781-
});
1782-
1783-
return toReturn
1784-
}
1773+
function union(listA) {
1774+
return listB => [
1775+
...listA,
1776+
...listB.filter(excludes(listA)),
1777+
]
17851778
}
17861779

17871780
function unionWith(predicate, x) {

dist/rambda.js

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -949,7 +949,7 @@ function interpolate(input) {
949949
}
950950

951951
function intersection(listA) {
952-
return listB => filter(x => includes(x)(listA))(listB)
952+
return listB => filter(includes(listA))(listB)
953953
}
954954

955955
function _includesWith(pred, x, list) {
@@ -1667,11 +1667,11 @@ function splitEvery(sliceLength) {
16671667
}
16681668
}
16691669

1670-
function symmetricDifference(x) {
1671-
return y => [
1672-
...filter(value => !includes(value)(y))(x),
1673-
...filter(value => !includes(value)(x))(y),
1674-
]
1670+
function symmetricDifference(listA) {
1671+
return listB => [
1672+
...filter(excludes(listB))(listA),
1673+
...filter(excludes(listA))(listB),
1674+
]
16751675
}
16761676

16771677
function tail(listOrString) {
@@ -1768,18 +1768,11 @@ function tryCatch(fn, fallback) {
17681768
}
17691769
}
17701770

1771-
function union(x) {
1772-
return y => {
1773-
const toReturn = cloneList(x);
1774-
1775-
y.forEach(yInstance => {
1776-
if (!includes(yInstance)(x)) {
1777-
toReturn.push(yInstance);
1778-
}
1779-
});
1780-
1781-
return toReturn
1782-
}
1771+
function union(listA) {
1772+
return listB => [
1773+
...listA,
1774+
...listB.filter(excludes(listA)),
1775+
]
17831776
}
17841777

17851778
function unionWith(predicate, x) {

dist/rambda.umd.js

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -955,7 +955,7 @@
955955
}
956956

957957
function intersection(listA) {
958-
return listB => filter(x => includes(x)(listA))(listB)
958+
return listB => filter(includes(listA))(listB)
959959
}
960960

961961
function _includesWith(pred, x, list) {
@@ -1673,11 +1673,11 @@
16731673
}
16741674
}
16751675

1676-
function symmetricDifference(x) {
1677-
return y => [
1678-
...filter(value => !includes(value)(y))(x),
1679-
...filter(value => !includes(value)(x))(y),
1680-
]
1676+
function symmetricDifference(listA) {
1677+
return listB => [
1678+
...filter(excludes(listB))(listA),
1679+
...filter(excludes(listA))(listB),
1680+
]
16811681
}
16821682

16831683
function tail(listOrString) {
@@ -1774,18 +1774,11 @@
17741774
}
17751775
}
17761776

1777-
function union(x) {
1778-
return y => {
1779-
const toReturn = cloneList(x);
1780-
1781-
y.forEach(yInstance => {
1782-
if (!includes(yInstance)(x)) {
1783-
toReturn.push(yInstance);
1784-
}
1785-
});
1786-
1787-
return toReturn
1788-
}
1777+
function union(listA) {
1778+
return listB => [
1779+
...listA,
1780+
...listB.filter(excludes(listA)),
1781+
]
17891782
}
17901783

17911784
function unionWith(predicate, x) {

docs/README.md

Lines changed: 14 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5572,7 +5572,7 @@ import { filter } from './filter.js'
55725572
import { includes } from './includes.js'
55735573

55745574
export function intersection(listA) {
5575-
return listB => filter(x => includes(x)(listA))(listB)
5575+
return listB => filter(includes(listA))(listB)
55765576
}
55775577
```
55785578

@@ -11637,13 +11637,13 @@ symmetricDifference<T>(x: T[]): (y: T[]) => T[];
1163711637

1163811638
```javascript
1163911639
import { filter } from './filter.js'
11640-
import { includes } from './includes.js'
11640+
import { excludes } from './excludes.js'
1164111641

11642-
export function symmetricDifference(x) {
11643-
return y => [
11644-
...filter(value => !includes(value)(y))(x),
11645-
...filter(value => !includes(value)(x))(y),
11646-
]
11642+
export function symmetricDifference(listA) {
11643+
return listB => [
11644+
...filter(excludes(listB))(listA),
11645+
...filter(excludes(listA))(listB),
11646+
]
1164711647
}
1164811648
```
1164911649

@@ -11656,7 +11656,7 @@ export function symmetricDifference(x) {
1165611656
```javascript
1165711657
import { symmetricDifference } from './symmetricDifference.js'
1165811658

11659-
test('symmetricDifference', () => {
11659+
test.only('symmetricDifference', () => {
1166011660
const list1 = [1, 2, 3, 4]
1166111661
const list2 = [3, 4, 5, 6]
1166211662
expect(symmetricDifference(list1)(list2)).toEqual([1, 2, 5, 6])
@@ -12776,21 +12776,13 @@ union<T>(x: T[]): (y: T[]) => T[];
1277612776
<summary><strong>R.union</strong> source</summary>
1277712777

1277812778
```javascript
12779-
import { cloneList } from './_internals/cloneList.js'
12780-
import { includes } from './includes.js'
12781-
12782-
export function union(x) {
12783-
return y => {
12784-
const toReturn = cloneList(x)
12785-
12786-
y.forEach(yInstance => {
12787-
if (!includes(yInstance)(x)) {
12788-
toReturn.push(yInstance)
12789-
}
12790-
})
12779+
import { excludes } from './excludes.js'
1279112780

12792-
return toReturn
12793-
}
12781+
export function union(listA) {
12782+
return listB => [
12783+
...listA,
12784+
...listB.filter(excludes(listA)),
12785+
]
1279412786
}
1279512787
```
1279612788

source/intersection.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ import { filter } from './filter.js'
22
import { includes } from './includes.js'
33

44
export function intersection(listA) {
5-
return listB => filter(x => includes(x)(listA))(listB)
5+
return listB => filter(includes(listA))(listB)
66
}

source/symmetricDifference.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { filter } from './filter.js'
2-
import { includes } from './includes.js'
2+
import { excludes } from './excludes.js'
33

4-
export function symmetricDifference(x) {
5-
return y => [
6-
...filter(value => !includes(value)(y))(x),
7-
...filter(value => !includes(value)(x))(y),
8-
]
4+
export function symmetricDifference(listA) {
5+
return listB => [
6+
...filter(excludes(listB))(listA),
7+
...filter(excludes(listA))(listB),
8+
]
99
}

source/symmetricDifference.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { symmetricDifference } from './symmetricDifference.js'
22

3-
test('symmetricDifference', () => {
3+
test.only('symmetricDifference', () => {
44
const list1 = [1, 2, 3, 4]
55
const list2 = [3, 4, 5, 6]
66
expect(symmetricDifference(list1)(list2)).toEqual([1, 2, 5, 6])

source/union.js

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,8 @@
1-
import { cloneList } from './_internals/cloneList.js'
2-
import { includes } from './includes.js'
1+
import { excludes } from './excludes.js'
32

4-
export function union(x) {
5-
return y => {
6-
const toReturn = cloneList(x)
7-
8-
y.forEach(yInstance => {
9-
if (!includes(yInstance)(x)) {
10-
toReturn.push(yInstance)
11-
}
12-
})
13-
14-
return toReturn
15-
}
3+
export function union(listA) {
4+
return listB => [
5+
...listA,
6+
...listB.filter(excludes(listA)),
7+
]
168
}

src/intersection.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ import { filter } from './filter.js'
22
import { includes } from './includes.js'
33

44
export function intersection(listA) {
5-
return listB => filter(x => includes(x)(listA))(listB)
5+
return listB => filter(includes(listA))(listB)
66
}

0 commit comments

Comments
 (0)