You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2021/12/08 14:18:28 UTC

[commons-lang] branch master updated (766a8da -> a71bab9)

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git.


    from 766a8da  Update Javadoc to match implementation details.
     new bdaaeb5  Reuse constant for immutable cases.
     new a71bab9  Simpler constant definitions.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/commons/lang3/ArrayUtils.java  |  2 +-
 .../apache/commons/lang3/tuple/ImmutablePair.java  | 17 ++++------------
 .../commons/lang3/tuple/ImmutableTriple.java       |  6 +++---
 .../apache/commons/lang3/tuple/MutablePair.java    |  2 +-
 .../apache/commons/lang3/tuple/MutableTriple.java  |  2 +-
 .../java/org/apache/commons/lang3/tuple/Pair.java  | 23 +---------------------
 .../org/apache/commons/lang3/tuple/Triple.java     | 23 +---------------------
 7 files changed, 12 insertions(+), 63 deletions(-)

[commons-lang] 02/02: Simpler constant definitions.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git

commit a71bab967acf182d7b3f72e31b46a41c027d9ba7
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Wed Dec 8 09:18:25 2021 -0500

    Simpler constant definitions.
---
 .../java/org/apache/commons/lang3/ArrayUtils.java  |  2 +-
 .../apache/commons/lang3/tuple/ImmutablePair.java  |  2 +-
 .../commons/lang3/tuple/ImmutableTriple.java       |  2 +-
 .../apache/commons/lang3/tuple/MutablePair.java    |  2 +-
 .../apache/commons/lang3/tuple/MutableTriple.java  |  2 +-
 .../java/org/apache/commons/lang3/tuple/Pair.java  | 23 +---------------------
 .../org/apache/commons/lang3/tuple/Triple.java     | 23 +---------------------
 7 files changed, 7 insertions(+), 49 deletions(-)

diff --git a/src/main/java/org/apache/commons/lang3/ArrayUtils.java b/src/main/java/org/apache/commons/lang3/ArrayUtils.java
index 7f835bd..20a309a 100644
--- a/src/main/java/org/apache/commons/lang3/ArrayUtils.java
+++ b/src/main/java/org/apache/commons/lang3/ArrayUtils.java
@@ -86,7 +86,7 @@ public class ArrayUtils {
     /**
      * An empty immutable {@code Class} array.
      */
-    public static final Class<?>[] EMPTY_CLASS_ARRAY = new Class[0];
+    public static final Class<?>[] EMPTY_CLASS_ARRAY = {};
 
     /**
      * An empty immutable {@code double} array.
diff --git a/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java b/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
index 9e0d9bd..44f2120 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
@@ -44,7 +44,7 @@ public final class ImmutablePair<L, R> extends Pair<L, R> {
      *
      * @since 3.10.
      */
-    public static final ImmutablePair<?, ?>[] EMPTY_ARRAY = new ImmutablePair[0];
+    public static final ImmutablePair<?, ?>[] EMPTY_ARRAY = {};
 
     /**
      * An immutable pair of nulls.
diff --git a/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java b/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
index 96ca8bf..4846cbe 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
@@ -44,7 +44,7 @@ public final class ImmutableTriple<L, M, R> extends Triple<L, M, R> {
      *
      * @since 3.10.
      */
-    public static final ImmutableTriple<?, ?, ?>[] EMPTY_ARRAY = new ImmutableTriple[0];
+    public static final ImmutableTriple<?, ?, ?>[] EMPTY_ARRAY = {};
 
     /**
      * An immutable triple of nulls.
diff --git a/src/main/java/org/apache/commons/lang3/tuple/MutablePair.java b/src/main/java/org/apache/commons/lang3/tuple/MutablePair.java
index 7347951..31c24c3 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/MutablePair.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/MutablePair.java
@@ -39,7 +39,7 @@ public class MutablePair<L, R> extends Pair<L, R> {
      *
      * @since 3.10.
      */
-    public static final MutablePair<?, ?>[] EMPTY_ARRAY = new MutablePair[0];
+    public static final MutablePair<?, ?>[] EMPTY_ARRAY = {};
 
     /** Serialization version */
     private static final long serialVersionUID = 4954918890077093841L;
diff --git a/src/main/java/org/apache/commons/lang3/tuple/MutableTriple.java b/src/main/java/org/apache/commons/lang3/tuple/MutableTriple.java
index f40fb4b..769c949 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/MutableTriple.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/MutableTriple.java
@@ -39,7 +39,7 @@ public class MutableTriple<L, M, R> extends Triple<L, M, R> {
      *
      * @since 3.10.
      */
-    public static final MutableTriple<?, ?, ?>[] EMPTY_ARRAY = new MutableTriple[0];
+    public static final MutableTriple<?, ?, ?>[] EMPTY_ARRAY = {};
 
     /** Serialization version */
     private static final long serialVersionUID = 1L;
diff --git a/src/main/java/org/apache/commons/lang3/tuple/Pair.java b/src/main/java/org/apache/commons/lang3/tuple/Pair.java
index 0d52881..b61320c 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/Pair.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/Pair.java
@@ -40,27 +40,6 @@ import org.apache.commons.lang3.builder.CompareToBuilder;
  */
 public abstract class Pair<L, R> implements Map.Entry<L, R>, Comparable<Pair<L, R>>, Serializable {
 
-    private static final class PairAdapter<L, R> extends Pair<L, R> {
-
-        private static final long serialVersionUID = 1L;
-
-        @Override
-        public L getLeft() {
-            return null;
-        }
-
-        @Override
-        public R getRight() {
-            return null;
-        }
-
-        @Override
-        public R setValue(final R value) {
-            return null;
-        }
-
-    }
-
     /** Serialization version */
     private static final long serialVersionUID = 4954918890077093841L;
 
@@ -72,7 +51,7 @@ public abstract class Pair<L, R> implements Map.Entry<L, R>, Comparable<Pair<L,
      *
      * @since 3.10.
      */
-    public static final Pair<?, ?>[] EMPTY_ARRAY = new PairAdapter[0];
+    public static final Pair<?, ?>[] EMPTY_ARRAY = {};
 
     /**
      * Returns the empty array singleton that can be assigned without compiler warning.
diff --git a/src/main/java/org/apache/commons/lang3/tuple/Triple.java b/src/main/java/org/apache/commons/lang3/tuple/Triple.java
index 0cbf2ec..0e21657 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/Triple.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/Triple.java
@@ -39,27 +39,6 @@ import org.apache.commons.lang3.builder.CompareToBuilder;
  */
 public abstract class Triple<L, M, R> implements Comparable<Triple<L, M, R>>, Serializable {
 
-    private static final class TripleAdapter<L, M, R> extends Triple<L, M, R> {
-
-        private static final long serialVersionUID = 1L;
-
-        @Override
-        public L getLeft() {
-            return null;
-        }
-
-        @Override
-        public M getMiddle() {
-            return null;
-        }
-
-        @Override
-        public R getRight() {
-            return null;
-        }
-
-    }
-
     /** Serialization version */
     private static final long serialVersionUID = 1L;
 
@@ -71,7 +50,7 @@ public abstract class Triple<L, M, R> implements Comparable<Triple<L, M, R>>, Se
      *
      * @since 3.10.
      */
-    public static final Triple<?, ?, ?>[] EMPTY_ARRAY = new TripleAdapter[0];
+    public static final Triple<?, ?, ?>[] EMPTY_ARRAY = {};
 
     /**
      * Returns the empty array singleton that can be assigned without compiler warning.

[commons-lang] 01/02: Reuse constant for immutable cases.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git

commit bdaaeb5b1b1805d0a9b52a9c74b9a2b4531cc53c
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Wed Dec 8 08:56:40 2021 -0500

    Reuse constant for immutable cases.
---
 .../org/apache/commons/lang3/tuple/ImmutablePair.java     | 15 +++------------
 .../org/apache/commons/lang3/tuple/ImmutableTriple.java   |  4 ++--
 2 files changed, 5 insertions(+), 14 deletions(-)

diff --git a/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java b/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
index 7c52b6c..9e0d9bd 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/ImmutablePair.java
@@ -51,7 +51,7 @@ public final class ImmutablePair<L, R> extends Pair<L, R> {
      */
     // This is not defined with generics to avoid warnings in call sites.
     @SuppressWarnings("rawtypes")
-    private static final ImmutablePair NULL = of(null, null);
+    private static final ImmutablePair NULL = new ImmutablePair<>(null, null);
 
     /** Serialization version */
     private static final long serialVersionUID = 4954918890077093841L;
@@ -111,7 +111,7 @@ public final class ImmutablePair<L, R> extends Pair<L, R> {
      * @return a pair formed from the two parameters, not null
      */
     public static <L, R> ImmutablePair<L, R> of(final L left, final R right) {
-        return new ImmutablePair<>(left, right);
+        return left != null || right != null ? new ImmutablePair<>(left, right) : NULL;
     }
 
     /**
@@ -127,16 +127,7 @@ public final class ImmutablePair<L, R> extends Pair<L, R> {
      * @since 3.10
      */
     public static <L, R> ImmutablePair<L, R> of(final Map.Entry<L, R> pair) {
-        final L left;
-        final R right;
-        if (pair != null) {
-            left = pair.getKey();
-            right = pair.getValue();
-        } else {
-            left = null;
-            right = null;
-        }
-        return new ImmutablePair<>(left, right);
+        return pair != null ? new ImmutablePair<>(pair.getKey(), pair.getValue()) : ImmutablePair.NULL;
     }
 
     /**
diff --git a/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java b/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
index 5ea70e6..96ca8bf 100644
--- a/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
+++ b/src/main/java/org/apache/commons/lang3/tuple/ImmutableTriple.java
@@ -51,7 +51,7 @@ public final class ImmutableTriple<L, M, R> extends Triple<L, M, R> {
      */
     // This is not defined with generics to avoid warnings in call sites.
     @SuppressWarnings("rawtypes")
-    private static final ImmutableTriple NULL = of(null, null, null);
+    private static final ImmutableTriple NULL = new ImmutableTriple<>(null, null, null);
 
     /** Serialization version */
     private static final long serialVersionUID = 1L;
@@ -99,7 +99,7 @@ public final class ImmutableTriple<L, M, R> extends Triple<L, M, R> {
      * @return a triple formed from the three parameters, not null
      */
     public static <L, M, R> ImmutableTriple<L, M, R> of(final L left, final M middle, final R right) {
-        return new ImmutableTriple<>(left, middle, right);
+        return left != null | middle != null || right != null ? new ImmutableTriple<>(left, middle, right) : NULL;
     }
 
     /**