Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 1566e17e authored by John Wu's avatar John Wu
Browse files

[HostStubGen] Multiple improvements

1. Consolidate SubstituteAnd[Stub/Keep] into a single Substitute policy.
   There is little reason to support SubstituteKeep, so make Substitute
   implicitly Stub. In production, methods are never annotated with both
   Stub/Keep + Substitute anyways.
2. Update ClassFilter to support nested classes.
3. Rewrite AnnotationFilter with the following improvements:
   - Previously, when a method is annotated as Substitute, the method
     itself will get the Remove policy, and the replacement method will
     get the Stub/Keep policy. In the new implementation, the annotated
     method will preserve its Substitute policy, which will not only be
     useful for future improvements, but also be consistent with how
     text policy filter is implemented.
   - Process the entire class all at once and cache its results; the
     previous implementation re-run the same operations multiple times.
   - Previously, the annotation allowlist was not properly enforced when
     Substitute annotation is used.

Bug: 292141694
Flag: EXEMPT host test change only
Test: atest hoststubgen-test-tiny-test
Test: $ANDROID_BUILD_TOP/frameworks/base/ravenwood/scripts/run-ravenwood-tests.sh
Change-Id: Iee223c5d0814351eccdcfc884da64bc507af83b7
parent 10bf2e16
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment