Add @Immutable
This annotation marks an interface as effectively immutable, enforcing through an annotation processor that it follow these guidelines: - Only exposes methods and/or static final constants - Every exposed type is an @Immutable interface or otherwise immutable class - Every method must return a type (no void methods allowed) - All inner classes must be @Immutable interfaces This is in preparation of making PackageState fully immutable. As a test case it has been marked in this change but has its errors suppressed using @Immutable.Ignore to have the build work. Test: atest --host ImmutabilityAnnotationProcessorUnitTests Test: m services.core.unboosted Change-Id: I59c615a97d5a30b83a5bcace0e2cee270ea5d1d2
Loading
Please register or sign in to comment