Skip to content

Commit 2862908

Browse files
committed
Add compact support for the chain().
1 parent febc204 commit 2862908

File tree

12 files changed

+53
-11
lines changed

12 files changed

+53
-11
lines changed

lodash-plugin/pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.github.javadev</groupId>
66
<artifactId>underscore-lodash</artifactId>
77
<packaging>jar</packaging>
8-
<version>1.6-SNAPSHOT</version>
8+
<version>1.7-SNAPSHOT</version>
99
<name>Lodash plugin for underscore-java</name>
1010
<description>The lodash plugin for underscore-java</description>
1111
<url>https://github.com/javadev/underscore-java</url>
@@ -49,7 +49,7 @@
4949
<plugin>
5050
<groupId>org.apache.maven.plugins</groupId>
5151
<artifactId>maven-compiler-plugin</artifactId>
52-
<version>3.3</version>
52+
<version>3.5</version>
5353
<configuration>
5454
<source>1.6</source>
5555
<target>1.6</target>
@@ -230,7 +230,7 @@
230230
<dependency>
231231
<groupId>com.github.javadev</groupId>
232232
<artifactId>underscore</artifactId>
233-
<version>1.10-SNAPSHOT</version>
233+
<version>1.11-SNAPSHOT</version>
234234
</dependency>
235235
<dependency>
236236
<groupId>junit</groupId>

lodash-plugin/src/main/java/com/github/underscore/lodash/$.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,14 @@ public Chain<T> rest(int n) {
118118
return new Chain<T>($.rest(value(), n));
119119
}
120120

121+
public Chain<T> compact() {
122+
return new Chain<T>($.compact(value()));
123+
}
124+
125+
public Chain<T> compact(final T falsyValue) {
126+
return new Chain<T>($.compact(value(), falsyValue));
127+
}
128+
121129
@SuppressWarnings("unchecked")
122130
public Chain flatten() {
123131
return new Chain($.flatten(value()));

lodash-plugin/src/test/java/com/github/underscore/lodash/LodashTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,8 @@ public void chain() {
454454
$.chain(new String[] {""}).last(1);
455455
$.chain(new String[] {""}).rest();
456456
$.chain(new String[] {""}).rest(1);
457+
$.chain(new String[] {""}).compact();
458+
$.chain(new String[] {""}).compact("1");
457459
$.chain(new String[] {""}).flatten();
458460
$.chain(new Integer[] {0}).map(new Function1<Integer, Integer>() {
459461
public Integer apply(Integer value) { return value; } });

math-plugin/pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.github.javadev</groupId>
66
<artifactId>underscore-math</artifactId>
77
<packaging>jar</packaging>
8-
<version>1.6-SNAPSHOT</version>
8+
<version>1.7-SNAPSHOT</version>
99
<name>Math plugin for underscore-java</name>
1010
<description>The math plugin for underscore-java</description>
1111
<url>https://github.com/javadev/underscore-java</url>
@@ -49,7 +49,7 @@
4949
<plugin>
5050
<groupId>org.apache.maven.plugins</groupId>
5151
<artifactId>maven-compiler-plugin</artifactId>
52-
<version>3.3</version>
52+
<version>3.5</version>
5353
<configuration>
5454
<source>1.6</source>
5555
<target>1.6</target>
@@ -206,7 +206,7 @@
206206
<dependency>
207207
<groupId>com.github.javadev</groupId>
208208
<artifactId>underscore</artifactId>
209-
<version>1.10-SNAPSHOT</version>
209+
<version>1.11-SNAPSHOT</version>
210210
</dependency>
211211
<dependency>
212212
<groupId>junit</groupId>

math-plugin/src/main/java/com/github/underscore/math/$.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,14 @@ public Chain<T> rest(int n) {
8181
return new Chain<T>($.rest(value(), n));
8282
}
8383

84+
public Chain<T> compact() {
85+
return new Chain<T>($.compact(value()));
86+
}
87+
88+
public Chain<T> compact(final T falsyValue) {
89+
return new Chain<T>($.compact(value(), falsyValue));
90+
}
91+
8492
@SuppressWarnings("unchecked")
8593
public Chain flatten() {
8694
return new Chain((List<T>) $.flatten(value()));

math-plugin/src/test/java/com/github/underscore/math/MathTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,8 @@ public void chain() {
213213
$.chain(new String[] {""}).last(1);
214214
$.chain(new String[] {""}).rest();
215215
$.chain(new String[] {""}).rest(1);
216+
$.chain(new String[] {""}).compact();
217+
$.chain(new String[] {""}).compact("1");
216218
$.chain(new String[] {""}).flatten();
217219
$.chain(new Integer[] {0}).map(new Function1<Integer, Integer>() {
218220
public Integer apply(Integer value) { return value; } });

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.github.javadev</groupId>
66
<artifactId>underscore</artifactId>
77
<packaging>jar</packaging>
8-
<version>1.10-SNAPSHOT</version>
8+
<version>1.11-SNAPSHOT</version>
99
<name>java port of Underscore.js</name>
1010
<description>The java port of Underscore.js</description>
1111
<url>https://github.com/javadev/underscore-java</url>
@@ -49,7 +49,7 @@
4949
<plugin>
5050
<groupId>org.apache.maven.plugins</groupId>
5151
<artifactId>maven-compiler-plugin</artifactId>
52-
<version>3.3</version>
52+
<version>3.5</version>
5353
<configuration>
5454
<source>1.6</source>
5555
<target>1.6</target>

src/main/java/com/github/underscore/$.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1774,6 +1774,14 @@ public Chain<T> rest(int n) {
17741774
return new Chain<T>($.rest(list, n));
17751775
}
17761776

1777+
public Chain<T> compact() {
1778+
return new Chain<T>($.compact(list));
1779+
}
1780+
1781+
public Chain<T> compact(final T falsyValue) {
1782+
return new Chain<T>($.compact(list, falsyValue));
1783+
}
1784+
17771785
@SuppressWarnings("unchecked")
17781786
public Chain flatten() {
17791787
return new Chain($.flatten(list));

src/test/java/com/github/underscore/ArraysTest.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,10 @@ public void compact() {
228228
assertEquals("[0, false, 2, , 3]", result2.toString());
229229
final List<?> result3 = $.compact(asList(0, 1, null, 2, "", 3));
230230
assertEquals("[1, 2, 3]", result3.toString());
231+
final List<?> resultChain = $.chain(asList(0, 1, false, 2, "", 3)).compact().value();
232+
assertEquals("[1, 2, 3]", resultChain.toString());
233+
final List<?> result2Chain = $.chain(asList(0, 1, false, 2, "", 3)).compact(1).value();
234+
assertEquals("[0, false, 2, , 3]", result2Chain.toString());
231235
final List<?> result4 = new $(asList(0, 1, false, 2, "", 3)).compact();
232236
assertEquals("[1, 2, 3]", result4.toString());
233237
final List<?> result5 = new $(asList(0, 1, false, 2, "", 3)).compact(1);

string-plugin/pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.github.javadev</groupId>
66
<artifactId>underscore-string</artifactId>
77
<packaging>jar</packaging>
8-
<version>1.6-SNAPSHOT</version>
8+
<version>1.7-SNAPSHOT</version>
99
<name>String plugin for underscore-java</name>
1010
<description>The string plugin for underscore-java</description>
1111
<url>https://github.com/javadev/underscore-java</url>
@@ -49,7 +49,7 @@
4949
<plugin>
5050
<groupId>org.apache.maven.plugins</groupId>
5151
<artifactId>maven-compiler-plugin</artifactId>
52-
<version>3.3</version>
52+
<version>3.5</version>
5353
<configuration>
5454
<source>1.6</source>
5555
<target>1.6</target>
@@ -230,7 +230,7 @@
230230
<dependency>
231231
<groupId>com.github.javadev</groupId>
232232
<artifactId>underscore</artifactId>
233-
<version>1.10-SNAPSHOT</version>
233+
<version>1.11-SNAPSHOT</version>
234234
</dependency>
235235
<dependency>
236236
<groupId>junit</groupId>

0 commit comments

Comments
 (0)