Uh oh!
There was an error while loading. Please reload this page.
This repository was archived by the owner on Jul 6, 2026. It is now read-only.
This repository was archived by the owner on Jul 6, 2026. It is now read-only.
There was an error while loading. Please reload this page.
Context: #1093
Context: https://mvnrepository.com/artifact/org.jetbrains/annotations/24.0.1
Context: https://www.oracle.com/corporate/features/understanding-java-9-modules.html
Context: https://docs.oracle.com/javase/specs/jvms/se9/html/jvms-4.html#jvms-4.7.25
JDK 9 adds support for modules, which is (kinda sorta) like .NET Assemblies: modules can depend upon other modules, export types, etc.
In particular:
This allows an equivalent to the C#
internalaccess modifier:publictypes in a non-exported package should be treated as "internal", whilepublictypes in anexported package a "fully public".TODO:
Xamarin.Android.Tools.Bytecodefor theModuleAttribute, theCONSTANT_Module_infostructure, and any other relevant module-related structures.//@visibilityvalue should be used for "public types in a non-exported package"; should it beinternal?kotlin-internal? Other? See also: 678c4bd, which added thekotlin-internalvisibilitygeneratorchanges to deal with the new visibility value, if necessary.