Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[jrubyc] respect Ruby visibility rules (do not generate private methods) #4570

Merged
merged 5 commits into from
Jun 13, 2017

Conversation

kares
Copy link
Member

@kares kares commented Apr 21, 2017

jrubyc --java generation updated to be a little smarter - trying to respect Ruby's visibility rules.

... private, protected, public as well as their private :method, ... counterparts now seamlessly 'work'

private Ruby methods (without an explicit java_signature '...' which is allowed to force generation) are no longer generated. also protected methods map to Java protected visibility by default.

(kind of) resolves #4469 (still undecided about what to do with with xxx? and yyy! methods)

@kares
Copy link
Member Author

kares commented May 6, 2017

@headius maybe this is good to go for 9.1.9 - to move some of the jrubyc --java users forward (#4469) ?

@headius
Copy link
Member

headius commented May 6, 2017

The question is whether the old behavior could be considered a feature by some, a feature that we are taking away. I don't feel that way though, so I am on board with including it.

We may want to consider moving jrubyc to a preinstalled gem for 9.2, so it can be updated independently.

@headius headius added this to the JRuby 9.1.9.0 milestone May 6, 2017
@kares
Copy link
Member Author

kares commented May 7, 2017

OK ... I'm fine with leaving it for 9.2 as well - let's have @enebo to 🎱 for us

@enebo enebo modified the milestones: JRuby 9.2.0.0, JRuby 9.1.9.0 May 16, 2017
@headius headius merged commit eb3ed8e into master Jun 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

private and private :foo have different semantics when compiling to Java
3 participants