gluecodium icon indicating copy to clipboard operation
gluecodium copied to clipboard

Reduce visibility propagation

Open DanielKamkha opened this issue 3 years ago • 0 comments

Removed the logic for propagating visibility from outer to inner elements from the AntlrLimeModel builder. For most languages, marking the inner elements "internal" is redundant if the outer element is already marked.

Added visibility propagation on case-by-case basis where needed:

  • in Dart for nested types, as there is no nesting in Dart
  • in Swift for types nested inside interfaces, as there is no nesting inside Swift protocols

For both cases, the propagation affects types only. Non-type elements are not affected.

This both simplifies the visibility logic, and ensures that "global" and "per-platform" visibilities are handled in the same way.

Signed-off-by: Daniel Kamkha [email protected]

DanielKamkha avatar Aug 12 '22 13:08 DanielKamkha