You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by pa...@apache.org on 2023/01/26 07:18:29 UTC

[groovy] 02/02: Minor improvements to 'Differences with Java' documentation page (additional minor tweaks)

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

paulk pushed a commit to branch GROOVY_4_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 4b7ac86ce3b99440ad982852f42fad42162b3c42
Author: Paul King <pa...@asert.com.au>
AuthorDate: Thu Jan 26 15:59:31 2023 +1000

    Minor improvements to 'Differences with Java' documentation page (additional minor tweaks)
---
 src/spec/doc/assets/css/style.css       |  4 ++-
 src/spec/doc/core-differences-java.adoc | 47 ++++++++++++++++-----------------
 2 files changed, 26 insertions(+), 25 deletions(-)

diff --git a/src/spec/doc/assets/css/style.css b/src/spec/doc/assets/css/style.css
index 3562670d2e..3f752ad44d 100644
--- a/src/spec/doc/assets/css/style.css
+++ b/src/spec/doc/assets/css/style.css
@@ -420,6 +420,8 @@ code {
     color: #db4800;
 }
 
+code.rotate { width: 20px; height: 100px; white-space: nowrap; transform: rotate(-90deg); background: transparent; border: 0px; display: inline-block; position:relative; left: 40px; bottom: -50px; }
+
 ul, ol, dl {
     font-size: 1em;
     line-height: 1.6;
@@ -1894,4 +1896,4 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] {
 
 #header #revnumber{
     color: #db4800;
-}
\ No newline at end of file
+}
diff --git a/src/spec/doc/core-differences-java.adoc b/src/spec/doc/core-differences-java.adoc
index 9a4bce77ab..acfe9585cc 100644
--- a/src/spec/doc/core-differences-java.adoc
+++ b/src/spec/doc/core-differences-java.adoc
@@ -296,11 +296,9 @@ are used very frequently and worthy of special treatment.
 Primitives can be efficiently stored and manipulated but can't be used in all contexts where an object could be used.
 Luckily, Java auto boxes and unboxes primitives when they are passed as parameters or used as return types:
 
-// a few shell blocks use "ruby" code style as it is more forgiving than Java or Groovy
-// it's not straight code after all, but might as well be a little pretty
 [source,java]
 ----
-public class Main {
+public class Main {           // Java
 
    float f1 = 1.0f;
    Float f2 = 2.0f;
@@ -348,12 +346,12 @@ Here is a little example using Java trying to (incorrectly for Java) dereference
 
 [source,java]
 ----
-class Main {
+public class Main {           // Java
 
     public float z1 = 0.0f;
 
     public static void main(String[] args){
-      new Main().z1.equals(1.0f); // DOES NOT COMPILE, Cannot resolve method 'equals(float)'
+      new Main().z1.equals(1.0f); // DOESN'T COMPILE, error: float cannot be dereferenced
     }
 }
 ----
@@ -472,29 +470,30 @@ https://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html[conversions].
 
 Groovy expands greatly on this.
 
+[%autowidth]
 [cols=">2s,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a,^1a"]
 .Groovy Conversions
 |=================================================================================================================================================================================================================
 |            18+|*Converts to*
-| Converts from | *boolean* | *Boolean* | *byte* | *Byte* | *short* | *Short* | *char* | *Character* | *int* | *Integer* | *long* | *Long* | *BigInteger* | *float* | *Float* | *double* | *Double* | *BigDecimal*
-| boolean       | -         | B         | N      | N      | N       | N       | N      | N           | N     | N         | N      | N      | N            | N       | N       | N        | N        | N
-| Boolean       | B         | -         | N      | N      | N       | N       | N      | N           | N     | N         | N      | N      | N            | N       | N       | N        | N        | N
-| byte          | T         | T         | -      | B      | Y       | Y       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| Byte          | T         | T         | B      | -      | Y       | Y       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| short         | T         | T         | D      | D      | -       | B       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| Short         | T         | T         | D      | T      | B       | -       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| char          | T         | T         | Y      | D      | Y       | D       | -      | D           | Y     | D         | Y      | D      | D            | Y       | D       | Y        | D        | D
-| Character     | T         | T         | D      | D      | D       | D       | D      | -           | D     | D         | D      | D      | D            | D       | D       | D        | D        | D
-| int           | T         | T         | D      | D      | D       | D       | Y      | D           | -     | B         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| Integer       | T         | T         | D      | D      | D       | D       | Y      | D           | B     | -         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
-| long          | T         | T         | D      | D      | D       | D       | Y      | D           | D     | D         | -      | B      | Y            | T       | T       | T        | T        | Y
-| Long          | T         | T         | D      | D      | D       | T       | Y      | D           | D     | T         | B      | -      | Y            | T       | T       | T        | T        | Y
-| BigInteger    | T         | T         | D      | D      | D       | D       | D      | D           | D     | D         | D      | D      | -            | D       | D       | D        | D        | T
-| float         | T         | T         | D      | D      | D       | D       | T      | D           | D     | D         | D      | D      | D            | -       | B       | Y        | Y        | Y
-| Float         | T         | T         | D      | T      | D       | T       | T      | D           | D     | T         | D      | T      | D            | B       | -       | Y        | Y        | Y
-| double        | T         | T         | D      | D      | D       | D       | T      | D           | D     | D         | D      | D      | D            | D       | D       | -        | B        | Y
-| Double        | T         | T         | D      | T      | D       | T       | T      | D           | D     | T         | D      | T      | D            | D       | T       | B        | -        | Y
-| BigDecimal    | T         | T         | D      | D      | D       | D       | D      | D           | D     | D         | D      | D      | D            | T       | D       | T        | D        | -
+| Converts from |[.rotate]`boolean` |[.rotate]`Boolean` |[.rotate]`byte` |[.rotate]`Byte` |[.rotate]`short` |[.rotate]`Short` |[.rotate]`char` |[.rotate]`Character` |[.rotate]`int` |[.rotate]`Integer` |[.rotate]`long` |[.rotate]`Long` |[.rotate]`BigInteger` |[.rotate]`float` |[.rotate]`Float` |[.rotate]`double` |[.rotate]`Double` |[.rotate]`BigDecimal`
+| `boolean`       | -         | B         | N      | N      | N       | N       | N      | N           | N     | N         | N      | N      | N            | N       | N       | N        | N        | N
+| `Boolean`       | B         | -         | N      | N      | N       | N       | N      | N           | N     | N         | N      | N      | N            | N       | N       | N        | N        | N
+| `byte`          | T         | T         | -      | B      | Y       | Y       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `Byte`          | T         | T         | B      | -      | Y       | Y       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `short`         | T         | T         | D      | D      | -       | B       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `Short`         | T         | T         | D      | T      | B       | -       | Y      | D           | Y     | Y         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `char`          | T         | T         | Y      | D      | Y       | D       | -      | D           | Y     | D         | Y      | D      | D            | Y       | D       | Y        | D        | D
+| `Character`     | T         | T         | D      | D      | D       | D       | D      | -           | D     | D         | D      | D      | D            | D       | D       | D        | D        | D
+| `int`           | T         | T         | D      | D      | D       | D       | Y      | D           | -     | B         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `Integer`       | T         | T         | D      | D      | D       | D       | Y      | D           | B     | -         | Y      | Y      | Y            | Y       | Y       | Y        | Y        | Y
+| `long`          | T         | T         | D      | D      | D       | D       | Y      | D           | D     | D         | -      | B      | Y            | T       | T       | T        | T        | Y
+| `Long`          | T         | T         | D      | D      | D       | T       | Y      | D           | D     | T         | B      | -      | Y            | T       | T       | T        | T        | Y
+| `BigInteger`    | T         | T         | D      | D      | D       | D       | D      | D           | D     | D         | D      | D      | -            | D       | D       | D        | D        | T
+| `float`         | T         | T         | D      | D      | D       | D       | T      | D           | D     | D         | D      | D      | D            | -       | B       | Y        | Y        | Y
+| `Float`         | T         | T         | D      | T      | D       | T       | T      | D           | D     | T         | D      | T      | D            | B       | -       | Y        | Y        | Y
+| `double`        | T         | T         | D      | D      | D       | D       | T      | D           | D     | D         | D      | D      | D            | D       | D       | -        | B        | Y
+| `Double`        | T         | T         | D      | T      | D       | T       | T      | D           | D     | T         | D      | T      | D            | D       | T       | B        | -        | Y
+| `BigDecimal`    | T         | T         | D      | D      | D       | D       | D      | D           | D     | D         | D      | D      | D            | T       | D       | T        | D        | -
 |=================================================================================================================================================================================================================
 * 'Y' indicates a conversion Groovy can make +
 * 'D' indicates a conversion Groovy can make when compiled dynamically or explicitly cast +