summaryrefslogtreecommitdiff
path: root/tools/codegen/src
AgeCommit message (Collapse)Author
2020-03-05Generate @NonNull setter args and @MaySetToNull to opt outEugene Susla
Bug: 143653080 Test: source /usr/local/google/home/eugenesusla/android2/master/frameworks/base/tests/Codegen/runTest.sh Change-Id: Iba8da34c91fd09e266429ab131add1d53449506b (cherry picked from commit ab14c55c1f085153f09741e497eb0cdeee38f0e1)
2020-01-29Remove unused UnsupportedAppUsage annotations.Artur Satayev
The new annotation is android.compat.annotation.UnsupportedAppUsage. Test: m Bug: 145132366 Exempt-From-Owner-Approval: previously approved change Change-Id: Ie12e28eee0ed20b5677ee3162143700813b7ab64
2019-11-18Add @NonNull annotation to Builder.addXXX argsEugene Susla
API guidelines is for each non-primitive arg to have a nullablility annotation. Since it's very rate for collections to permit null values, just assume collections only accept @NunNull emenents for now. Fixes: 144725154 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: I333327490bd8eb9bb031f062c80283bd405173af
2019-11-05Fix codegen ArrayMap fieldsEugene Susla
Fixes: 143112074 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: Iec0fa89a91955f8b4e4b5b8d4dd9d7f0b30c608f
2019-11-01[codegen] Fix generation for files without end markersEugene Susla
This fixes a bug where cedegen fails for files that were generated before end of generated code section markers were introduced. Test: . master/frameworks/base/tests/Codegen/runTest.sh Change-Id: Ia68e8124fcbdeeb2052067ba8731e68e42007529
2019-11-01[codegen] Support nested classesEugene Susla
Adds support for arbitrarily-nested @DataClasses Only static ones are supported for now See FileInfo for the main implementation piece Fixes: 139833958 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: I31cd16969788c47003a7a15a3573a4bf623ab960
2019-10-24Add CDM API to filter by BSSID bitmaskEugene Susla
Per recommendation from wifi team, this is an important filter to provide Test: manual Fixes: 143313206 Change-Id: Ifcad0f6ce5134854114aa9df97b2c44ece858a30
2019-10-16Add @NonNull to some generated methods' argsEugene Susla
Test: . frameworks/base/tests/Codegen/runTest.sh Fixes: 142783758 Change-Id: I7303d420efd59389c324b3e399fcb3532b5d6c37
2019-10-11Few minor codegen fixesEugene Susla
- (partially) fix annotations with array arg trigger stale false positive - support boxed primitives parcelling - support excluding generated code from Intellij auto-formatting Fixes: 142086873, 142149372 Bug: 142132310 Test: . frameworks/base/tests/Codegen/runTest.sh + manually test auto-formatting Change-Id: Ib6a44dee59f840cc11066aa9ff3517d957d1d010
2019-10-08Fix some stale dataclass detector false positivesEugene Susla
Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: I562bb4f238bdb28af49804e77c956e41a7bd198d
2019-10-05Merge "Add inheritance support for parcelable dataclasses"TreeHugger Robot
2019-10-05Merge "Add helpful links to `codegen --help`"TreeHugger Robot
2019-10-04Add inheritance support for parcelable dataclassesEugene Susla
We don't want to recommend this, but some legacy framework classes use inheritance, and it's easy enough to support Fixes: 142081378 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: Ifb7f34abf1dfb871ac01b9a9a38dfee144e5f49a
2019-10-04Add helpful links to `codegen --help`Eugene Susla
Test: ensure links/email are clickable in terminal Change-Id: I2d9461e98497b8a2af21b0a48ae05c5c110c8484
2019-10-03Fix a few corner-cases with parcelling SparseArrays and MapsEugene Susla
Also added a test for some similar parcelling corner cases Test: . frameworks/base/tests/Codegen/runTest.sh Fixes: 141877655 Change-Id: Iad5c3b0a8489206754f6ebe6acb8b56ba9ca174a
2019-10-01Fix codegen adding random /Eugene Susla
Fixes: 141934335 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: Ic72d141ed58e332079e7edb7134e02d1447ff643
2019-09-27Move lint disabler comment above CLI hintEugene Susla
Long file names may trigger lint error right in the generated warning comment Fixes: 141753810 Test: presubmit Change-Id: I89be669e111e65f80ff8994fd61eaab3c0ae8a6e
2019-09-11Fix codegen not accepting relative pathsEugene Susla
Fixes: 140886378 Test: codegen tests/Codegen/src/com/android/codegentest/SampleDataClass.java; ./frameworks/base/tests/Codegen/runTest.sh Change-Id: Ie2b5c55f35ec7865bf34cf9e99ef7751eb5f8d98
2019-08-07Merge "Use dataclass codegen on a few initial framework classes"Eugene Susla
2019-08-06Use dataclass codegen on a few initial framework classesEugene Susla
Test: presubmit Change-Id: Ide3c21596f6489fdb1db8f72e1436a01b10f56ed
2019-08-06Update codegen to match javaparser updateEugene Susla
Test: . $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/runTest.sh Change-Id: I3e961a9cee5c71bd2195328dcb53dabd61255aa6
2019-08-05Addresses further review comments from ag/8000041Eugene Susla
Including: - An API to opt out of Int/StringDefs generation on per-field basis - A way to customize Builder - Non-optional fields are passed in Builder constructor - Various adjustments to SampleDataclass examples, as requested Test: . $ANDROID_BUILD_TOP/frameworks/base/tests/Codegen/runTest.sh Change-Id: I32d2eec52f05d505ff07779d923e4793d3036579
2019-07-29Auto-build/update codegenEugene Susla
Test: 1. Manually enter version/presence of build artifact, and ensure `codegen FILENAME` still works 2. run codegen again without altering version, ensure no build triggered Change-Id: I6f1dba0a476077c708bbea8ef558445107e5ad97
2019-07-17Codegen for parcelable/dataclass boilerplateEugene Susla
This is the initial implementation of the `codegen` cli utility for in-place java boilerplate generation See DataClass and SampleDataClass for documentation/guide/examples. See tools/codegen/ for implementation and tests/Codegen/ for tests. Bug: 64221737 Test: . frameworks/base/tests/Codegen/runTest.sh Change-Id: I75177cb770f1beabc87dbae9e77ce4b93ca08e7f