JDK 13 RFR of JDK-8217000: Refactor Class::methodToString

Joe Darcy joe.darcy at oracle.com
Tue Jan 15 03:41:43 UTC 2019


PS And for good measure, made analogous changes in Executable.java:

     http://cr.openjdk.java.net/~darcy/8217000.1/

Patch:

--- old/src/java.base/share/classes/java/lang/reflect/Executable.java 
2019-01-14 19:39:53.855000999 -0800
+++ new/src/java.base/share/classes/java/lang/reflect/Executable.java 
2019-01-14 19:39:53.559000999 -0800
@@ -113,14 +113,16 @@
              specificToStringHeader(sb);
              sb.append('(');

- sb.append(Stream.of(parameterTypes).map(Type::getTypeName).
-                      collect(Collectors.joining(",")));
+            sb.append(Arrays.stream(parameterTypes)
+              .map(Type::getTypeName)
+                      .collect(Collectors.joining(",")));

              sb.append(')');

              if (exceptionTypes.length > 0) {
- sb.append(Stream.of(exceptionTypes).map(Type::getTypeName).
-                          collect(Collectors.joining(",", " throws ", 
"")));
+                sb.append(Arrays.stream(exceptionTypes)
+              .map(Type::getTypeName)
+                          .collect(Collectors.joining(",", " throws ", 
"")));
              }
              return sb.toString();
          } catch (Exception e) {
@@ -140,8 +142,9 @@
              return typeVar.getName();
          } else {
              return typeVar.getName() + " extends " +
-                Stream.of(bounds).map(Type::getTypeName).
-                collect(Collectors.joining(" & "));
+                Arrays.stream(bounds)
+        .map(Type::getTypeName)
+                .collect(Collectors.joining(" & "));
          }
      }

@@ -153,8 +156,9 @@

              TypeVariable<?>[] typeparms = getTypeParameters();
              if (typeparms.length > 0) {
- sb.append(Stream.of(typeparms).map(Executable::typeVarBounds).
-                          collect(Collectors.joining(",", "<", "> ")));
+                sb.append(Arrays.stream(typeparms)
+              .map(Executable::typeVarBounds)
+                          .collect(Collectors.joining(",", "<", "> ")));
              }

              specificToGenericStringHeader(sb);
@@ -173,8 +177,9 @@

              Type[] exceptionTypes = getGenericExceptionTypes();
              if (exceptionTypes.length > 0) {
- sb.append(Stream.of(exceptionTypes).map(Type::getTypeName).
-                          collect(Collectors.joining(",", " throws ", 
"")));
+                sb.append(Arrays.stream(exceptionTypes)
+              .map(Type::getTypeName)
+                          .collect(Collectors.joining(",", " throws ", 
"")));
              }
              return sb.toString();
          } catch (Exception e) {

Thanks,

-Joe

On 1/14/2019 6:07 PM, Joe Darcy wrote:
> Hello,
>
> Please review a small factoring of several methods in java.lang.Class:
>
>     JDK-8217000: Refactor Class::methodToString
>     http://cr.openjdk.java.net/~darcy/8217000.0/
>
> Patch below; thanks,
>
> -Joe
>
> --- old/src/java.base/share/classes/java/lang/Class.java 2019-01-14 
> 18:05:22.194000999 -0800
> +++ new/src/java.base/share/classes/java/lang/Class.java 2019-01-14 
> 18:05:21.938000999 -0800
> @@ -272,8 +272,9 @@
>
>              TypeVariable<?>[] typeparms = component.getTypeParameters();
>              if (typeparms.length > 0) {
> - sb.append(Stream.of(typeparms).map(Class::typeVarBounds).
> -                          collect(Collectors.joining(",", "<", ">")));
> +                sb.append(Arrays.stream(typeparms)
> +                          .map(Class::typeVarBounds)
> +                          .collect(Collectors.joining(",", "<", ">")));
>              }
>
>              for (int i = 0; i < arrayDepth; i++)
> @@ -289,8 +290,9 @@
>              return typeVar.getName();
>          } else {
>              return typeVar.getName() + " extends " +
> -                Stream.of(bounds).map(Type::getTypeName).
> -                collect(Collectors.joining(" & "));
> +                Arrays.stream(bounds)
> +                .map(Type::getTypeName)
> +                .collect(Collectors.joining(" & "));
>          }
>      }
>
> @@ -3419,8 +3421,9 @@
>          StringBuilder sb = new StringBuilder();
>          sb.append(getName() + "." + name + "(");
>          if (argTypes != null) {
> -            sb.append(Stream.of(argTypes).map(c -> {return (c == 
> null) ? "null" : c.getName();}).
> -                      collect(Collectors.joining(",")));
> +            sb.append(Arrays.stream(argTypes)
> +                      .map(c -> (c == null) ? "null" : c.getName())
> +                      .collect(Collectors.joining(",")));
>          }
>          sb.append(")");
>          return sb.toString();
>


More information about the core-libs-dev mailing list