You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by gi...@apache.org on 2021/07/27 13:13:07 UTC

[groovy-dev-site] branch asf-site updated: 2021/07/27 13:13:04: Generated dev website from groovy-website@d9f80bc

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

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/groovy-dev-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new cc02b6b  2021/07/27 13:13:04: Generated dev website from groovy-website@d9f80bc
cc02b6b is described below

commit cc02b6ba3af6bf4f56cca380bbe27613c49ebb56
Author: jenkins <bu...@apache.org>
AuthorDate: Tue Jul 27 13:13:04 2021 +0000

    2021/07/27 13:13:04: Generated dev website from groovy-website@d9f80bc
---
 wiki/GEP-13.html | 25 +++++++++++++++----------
 1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/wiki/GEP-13.html b/wiki/GEP-13.html
index 88cbe03..02ee051 100644
--- a/wiki/GEP-13.html
+++ b/wiki/GEP-13.html
@@ -165,6 +165,11 @@ code reuse to occur only within the package. While it does limit creation of
 new shapes outside the original package, it offers no abstraction for a shape which
 could be either a square or circle since <code>Shape</code> is not public.</p>
 </li>
+<li>
+<p>We can use <code>protected</code> visibility to limit access of members strictly to children
+but that doesn&#8217;t help us solve the aforementioned problems like lack of a visible
+abstraction for <code>Shape</code> in the discussed example.</p>
+</li>
 </ul>
 </div>
 <div class="paragraph">
@@ -201,6 +206,13 @@ Likewise for interfaces. This also applies for anonymous inner classes and trait
 <p>Provide checks in other places where such extension might occur implicitly, e.g.:&nbsp;with <code>@Delegate</code>,
 when using type coercion, etc.</p>
 </li>
+<li>
+<p>Support <code>non-sealed</code> or <code>unsealed</code> sub-hierarchies. (See JEP-409)</p>
+</li>
+<li>
+<p>Allow the permitted subclasses to be inferred automatically just for the case
+where the base and all permitted subclasses are in the same file. (See JEP-409)</p>
+</li>
 </ul>
 </div>
 </div>
@@ -216,13 +228,10 @@ are non-goals for the first implementation:</p>
 <p>Introduce the <code>sealed</code> modifier and <code>permits</code> clause in the grammar.</p>
 </li>
 <li>
-<p>Support <code>non-sealed</code> or <code>unsealed</code> sub-hierarchies.</p>
-</li>
-<li>
 <p>Require that all classes within a sealed hierarchy be compiled at the same time.</p>
 </li>
 <li>
-<p>Require that all classes within a sealed hierarchy belong to the same module.</p>
+<p>Require that all classes within a sealed hierarchy belong to the same JPMS module.</p>
 </li>
 <li>
 <p>Add warnings to the static compiler if a switch is used for a sealed hierarchy
@@ -261,12 +270,8 @@ and not all types are exhaustively covered.</p>
 </div>
 <div class="sect2">
 <h3 id="_reference_implementation">Reference implementation</h3>
-<div class="ulist">
-<ul>
-<li>
-<p>TBD</p>
-</li>
-</ul>
+<div class="paragraph">
+<p><a href="https://github.com/apache/groovy/pull/1606" class="bare">https://github.com/apache/groovy/pull/1606</a></p>
 </div>
 </div>
 <div class="sect2">