Ah yes, Java interface default implementation methods were introduced in Java 8. I need to add support for this feature...

Thank you for the bug report !

Andi..

On Wed, 26 Feb 2020, Petrus Hyvönen (Jira) wrote:


    [ 
https://issues.apache.org/jira/browse/PYLUCENE-53?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Petrus Hyvönen updated PYLUCENE-53:
-----------------------------------
   Description:
Hi,

This may be related to PYLUCENE-27 but not sure.

Default implementations of methods in an interface does not seem to be exposed 
currently.

For example:

The interface:

interface Being {
public void printName();

default int getFeets()
{
return 4;
}
}

Implemented in the class:

public class Cat extends Feline implements Being {
public void printName() {
System.out.println("Cat");
}

public int getJavaFeets()
{
return this.getFeets();
}

}

When wrapped in Python, the getJavaFeets is exposed to the Python side, but not 
the getFeets method.


??

??

??
 was:
Hi,

This may be related to PYLUCENE-27 but not sure.

Default implementations of methods in an interface does not seem to be exposed 
currently.

For example:

The interface:

{{interface Being {}}
{{ public void printName();}}

{{ default int getFeets()}}
{{ {}}
{{ return 4;}}
{{ }}}
{{}}}


??
Implemented in the class:

{{public class Cat extends Feline implements Being {}}
{{ public void printName() {}}
{{ System.out.println("Cat");}}
{{ }}}

{{ public int getJavaFeets()}}
{{ {}}
{{ return this.getFeets();}}
{{ }}}

{{}}}

When wrapped in Python, the getJavaFeets is exposed to the Python side, but not 
the getFeets method.


??

??

??

JCC Default implementations from Interfaces not exposed
-------------------------------------------------------

                Key: PYLUCENE-53
                URL: https://issues.apache.org/jira/browse/PYLUCENE-53
            Project: PyLucene
         Issue Type: Bug
           Reporter: Petrus Hyvönen
           Priority: Major
        Attachments: Test_default_implementation.zip


Hi,
This may be related to PYLUCENE-27 but not sure.
Default implementations of methods in an interface does not seem to be exposed 
currently.
For example:
The interface:
interface Being {
 public void printName();
 default int getFeets()
 {
 return 4;
 }
}
Implemented in the class:
public class Cat extends Feline implements Being {
 public void printName() {
 System.out.println("Cat");
 }
 public int getJavaFeets()
 {
 return this.getFeets();
 }
}
When wrapped in Python, the getJavaFeets is exposed to the Python side, but not 
the getFeets method.

??> ??> ??


--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to