Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-8320

Support property references in addition to the method references from Java 8

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.6.0-alpha-1
    • None
    • parser-antlr2
    • None

    Description

      It would be great if the method reference syntax from Java (Class::method or obj::method) could also be extended to support Groovy properties. The new parser currently already parses the syntax without error, but it gets treated as a method reference.

      Potential example usage:

      class Test {
          String property
      }
      
      def test = new Test(property: 'Hello')
      def boundReference = test::property
      def unboundReference = Test::property
      
      // getting/setting property using bound reference
      println boundReference.get()
      boundReference.set('Hello to you!')
      
      // getting/setting property using unbound reference
      println unboundReference.get(test)
      unboundReference.set(test, 'Hello to you!')
      
      // retrieving meta information
      println boundReference.type
      println boundReference.name
      println boundReference.target
      
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            Yesterdave David Kron
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: