This is an automated email from the ASF dual-hosted git repository. jking pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/thrift.git
The following commit(s) were added to refs/heads/master by this push: new df9c60d THRIFT-4711: Improve Immutable None Type Instantiation df9c60d is described below commit df9c60d38f0255ea08ea0a5aeba1abc4a0ccf04d Author: Beluga Behr <dam6...@gmail.com> AuthorDate: Tue Jan 1 14:43:23 2019 -0500 THRIFT-4711: Improve Immutable None Type Instantiation --- lib/java/src/org/apache/thrift/Option.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/java/src/org/apache/thrift/Option.java b/lib/java/src/org/apache/thrift/Option.java index db25ec5..d5cd309 100644 --- a/lib/java/src/org/apache/thrift/Option.java +++ b/lib/java/src/org/apache/thrift/Option.java @@ -24,6 +24,9 @@ package org.apache.thrift; */ public abstract class Option<T> { + @SuppressWarnings("rawtypes") + private static final Option NONE = new None(); + /** * Whether the Option is defined or not * @return @@ -87,7 +90,7 @@ public abstract class Option<T> { } public String toString() { - return "Some("+value.toString()+")"; + return "Some(" + value + ")"; } } @@ -99,9 +102,9 @@ public abstract class Option<T> { */ public static <T> Option<T> fromNullable(T value) { if (value != null) { - return new Some<T>(value); + return some(value); } else { - return new None<T>(); + return none(); } } @@ -115,7 +118,8 @@ public abstract class Option<T> { return new Some<T>(value); } + @SuppressWarnings("unchecked") public static <T> None<T> none() { - return new None<T>(); + return (None<T>) NONE; } } \ No newline at end of file