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

Replace all unvisible types by Object #15

Closed
stephanenicolas opened this issue Sep 30, 2013 · 1 comment
Closed

Replace all unvisible types by Object #15

stephanenicolas opened this issue Sep 30, 2013 · 1 comment
Assignees
Labels

Comments

@stephanenicolas
Copy link
Owner

When processing a class, it can internally use types that may not be visible in the boundbox scope or in its clients scope.

In that case , the type should be replaced by Object.

@stephanenicolas
Copy link
Owner Author

The visitor inside the BoundBoxScanner should take into account the visibility of the types it visits :

  • a type that is public at root level is visible
  • a type that is public and is an inner class of a class that is visible, is visible
  • a type that is protected or package at root level and in the same package as the BoundBox class is visible
  • a type that is protected or package and is an inner class of a class that is visible and in the same package as the BoundBox class is visible

TODO :

  • Update Annotation Processor
  • Fields
  • Methods signature : return type + param + exceptions
  • Inner classes
  • Update wiki
  • Update integration tests
  • Check that package is taken into account

Typical example :

public class A {
    private class B {}
    B foo();
}

A.B is not visible from BoundBoxOfA, the signature of BoundBoxOfA.foo() should be :

 public Object foo()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant