Record construction
    Mark Raynsford 
    mark at io7m.com
       
    Wed Mar 14 16:48:22 UTC 2018
    
    
  
On 2018-03-14T10:55:54 -0400
Brian Goetz <brian.goetz at oracle.com> wrote:
>
> The constructor syntax
> 
>      record Point(int x, int y) {
>          Point {
>          }
>      }
> 
> is proposed as a shorthand for an explicit default constructor:
> 
>      record Point(int x, int y) {
>          Point(int x, int y) {
>          }
>      }
> 
One small thing: Could the contents of this constructor be lifted into
JavaDoc? The fact that preconditions are supposed to appear in
documentation is something that seems to be sadly lacking in almost all
of the "design by contract" systems for Java. If I write a constructor
like:
 record Point(int x, int y) {
   Point {
     Preconditions.mustBeNonNegative(x);
     Preconditions.mustBeNonNegative(y);  
   }
 }
It'd be nice if those statements could be made visible in the JavaDoc.
I think this was covered slightly in some of the other discussion about
"requires", but it fizzled out (unless I missed something).
-- 
Mark Raynsford | http://www.io7m.com
    
    
More information about the amber-spec-experts
mailing list