groovy-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GROOVY-7942) @Lazy transform creates unneeded getter/setter for backing store field
Date Sun, 18 Sep 2016 00:19:21 GMT

    [ https://issues.apache.org/jira/browse/GROOVY-7942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15499919#comment-15499919
] 

ASF GitHub Bot commented on GROOVY-7942:
----------------------------------------

GitHub user paulk-asert opened a pull request:

    https://github.com/apache/groovy/pull/423

    GROOVY-7942: @Lazy transform creates unneeded getter/setter for backi…

    …ng store field

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/paulk-asert/groovy groovy7942

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/groovy/pull/423.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #423
    
----
commit 31ee88edaafd29a85fd85c985f84a1fcea797b2d
Author: paulk <paulk@asert.com.au>
Date:   2016-09-18T00:17:24Z

    GROOVY-7942: @Lazy transform creates unneeded getter/setter for backing store field

----


> @Lazy transform creates unneeded getter/setter for backing store field
> ----------------------------------------------------------------------
>
>                 Key: GROOVY-7942
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7942
>             Project: Groovy
>          Issue Type: Improvement
>            Reporter: Paul King
>
> The following code:
> {code}
> @Lazy String foo
> {code}
> creates an appropriate {{getFoo}} getter method and a private {{$foo}} backing field
but in renaming the fieldNode to have the dollar prefix, it doesn't remove the corresponding
entry in the ClassNode's properties list. This results in some spurious {{get$Foo}} and {{set$Foo}}
methods being created in later compilation phases. On the one hand these could be regarded
as some backdoor semi-internal way to get access to the backing field but in reality using
those methods would violate the contract that {{@Lazy}} is trying to provide..



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message