Loading core/java/com/android/internal/util/DataClass.java +17 −3 Original line number Diff line number Diff line Loading @@ -177,11 +177,10 @@ public @interface DataClass { /** * @deprecated to be used by code generator exclusively * @hide */ @Deprecated @Retention(RetentionPolicy.SOURCE) @Target({FIELD, METHOD, PARAMETER, LOCAL_VARIABLE, ANNOTATION_TYPE, CONSTRUCTOR, TYPE}) @Target({METHOD}) @interface Generated { long time(); String codegenVersion(); Loading @@ -190,7 +189,6 @@ public @interface DataClass { /** * @deprecated to be used by code generator exclusively * @hide */ @Deprecated @Retention(RetentionPolicy.SOURCE) Loading @@ -198,6 +196,22 @@ public @interface DataClass { @interface Member {} } /** * Opt out of generating {@link #genConstDefs IntDef/StringDef}s for annotated constant */ @Retention(RetentionPolicy.SOURCE) @Target({FIELD}) @interface SuppressConstDefsGeneration {} /** * A class-level annotation to suppress methods' generation by name */ @Retention(RetentionPolicy.SOURCE) @Target({TYPE}) @interface Suppress { String[] value(); } /** * Callback used by {@link #genForEachField}. * Loading core/java/com/android/internal/util/Parcelling.java +3 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ import java.util.regex.Pattern; /** * Describes a 2-way parcelling contract of type {@code T} into/out of a {@link Parcel} * * Implementations should be stateless. * * @param <T> the type being [un]parcelled */ public interface Parcelling<T> { Loading Loading @@ -69,6 +71,7 @@ public interface Parcelling<T> { * instance or reflectively creating one. */ public static <P extends Parcelling<?>> P getOrCreate(Class<P> clazz) { // No synchronization - creating an extra instance in a race case is ok P cached = get(clazz); if (cached != null) { return cached; Loading tests/Codegen/runTest.sh +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ else header_and_eval m -j16 codegen_cli && \ header_and_eval codegen $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/src/com/android/codegentest/SampleDataClass.java && \ header_and_eval codegen $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/src/com/android/codegentest/SampleWithCustomBuilder.java && \ cd $ANDROID_BUILD_TOP && header_and_eval mmma -j16 frameworks/base/tests/Codegen && \ header_and_eval adb install -r -t $ANDROID_PRODUCT_OUT/testcases/CodegenTests/arm64/CodegenTests.apk && \ Loading tests/Codegen/src/com/android/codegentest/DateParcelling.java→tests/Codegen/src/com/android/codegentest/MyDateParcelling.java +2 −2 Original line number Diff line number Diff line Loading @@ -31,11 +31,11 @@ import java.util.concurrent.atomic.AtomicInteger; * * Ignore {@link #sInstanceCount} - used for testing. */ public class DateParcelling implements Parcelling<Date> { public class MyDateParcelling implements Parcelling<Date> { static AtomicInteger sInstanceCount = new AtomicInteger(0); public DateParcelling() { public MyDateParcelling() { sInstanceCount.getAndIncrement(); } Loading tests/Codegen/src/com/android/codegentest/SampleDataClass.java +533 −267 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
core/java/com/android/internal/util/DataClass.java +17 −3 Original line number Diff line number Diff line Loading @@ -177,11 +177,10 @@ public @interface DataClass { /** * @deprecated to be used by code generator exclusively * @hide */ @Deprecated @Retention(RetentionPolicy.SOURCE) @Target({FIELD, METHOD, PARAMETER, LOCAL_VARIABLE, ANNOTATION_TYPE, CONSTRUCTOR, TYPE}) @Target({METHOD}) @interface Generated { long time(); String codegenVersion(); Loading @@ -190,7 +189,6 @@ public @interface DataClass { /** * @deprecated to be used by code generator exclusively * @hide */ @Deprecated @Retention(RetentionPolicy.SOURCE) Loading @@ -198,6 +196,22 @@ public @interface DataClass { @interface Member {} } /** * Opt out of generating {@link #genConstDefs IntDef/StringDef}s for annotated constant */ @Retention(RetentionPolicy.SOURCE) @Target({FIELD}) @interface SuppressConstDefsGeneration {} /** * A class-level annotation to suppress methods' generation by name */ @Retention(RetentionPolicy.SOURCE) @Target({TYPE}) @interface Suppress { String[] value(); } /** * Callback used by {@link #genForEachField}. * Loading
core/java/com/android/internal/util/Parcelling.java +3 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ import java.util.regex.Pattern; /** * Describes a 2-way parcelling contract of type {@code T} into/out of a {@link Parcel} * * Implementations should be stateless. * * @param <T> the type being [un]parcelled */ public interface Parcelling<T> { Loading Loading @@ -69,6 +71,7 @@ public interface Parcelling<T> { * instance or reflectively creating one. */ public static <P extends Parcelling<?>> P getOrCreate(Class<P> clazz) { // No synchronization - creating an extra instance in a race case is ok P cached = get(clazz); if (cached != null) { return cached; Loading
tests/Codegen/runTest.sh +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ else header_and_eval m -j16 codegen_cli && \ header_and_eval codegen $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/src/com/android/codegentest/SampleDataClass.java && \ header_and_eval codegen $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/src/com/android/codegentest/SampleWithCustomBuilder.java && \ cd $ANDROID_BUILD_TOP && header_and_eval mmma -j16 frameworks/base/tests/Codegen && \ header_and_eval adb install -r -t $ANDROID_PRODUCT_OUT/testcases/CodegenTests/arm64/CodegenTests.apk && \ Loading
tests/Codegen/src/com/android/codegentest/DateParcelling.java→tests/Codegen/src/com/android/codegentest/MyDateParcelling.java +2 −2 Original line number Diff line number Diff line Loading @@ -31,11 +31,11 @@ import java.util.concurrent.atomic.AtomicInteger; * * Ignore {@link #sInstanceCount} - used for testing. */ public class DateParcelling implements Parcelling<Date> { public class MyDateParcelling implements Parcelling<Date> { static AtomicInteger sInstanceCount = new AtomicInteger(0); public DateParcelling() { public MyDateParcelling() { sInstanceCount.getAndIncrement(); } Loading
tests/Codegen/src/com/android/codegentest/SampleDataClass.java +533 −267 File changed.Preview size limit exceeded, changes collapsed. Show changes