Kotlin Visibility Modifiers
Are you missing package private visibility in kotlin?
This repository is to provide PackagePrivate
and FilePrivate
annotations
as well as necessary lint checks.
@PackagePrivate
annotation is a replacement for java package-private visibility.
@FilePrivate
is a new thing for java/kotlin. As the name says annotatated members
can be accessed in the same file they are declared.
Usage
Add dependency to you build.gradle
:
implementation("io.github.esentsov:kotlin-visibility:1.1.0")
Use annotations @PackagePrivate
and @FilePrivate
in your code.
All necessary lint checks are already included, Android Studio will pick them up
and show an error every time you are trying to access annotated members outside of the respective scope.
Release notes
1.1.0
Add support for class-level annotations. Detect usage of annotated classes, objects, annotation classes. Also detect usage of function, properties or inner classes of an annotated class.
1.0.0
Initial release. Support detections of annotated constructors, properties and functions.