summaryrefslogtreecommitdiff
path: root/tools/codegen/src/com/android/codegen/ClassPrinter.kt
diff options
context:
space:
mode:
authorEugene Susla <eugenesusla@google.com>2019-08-07 22:51:23 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2019-08-07 22:51:23 +0000
commitf366188dacbf29d60b59b023204d0dfa0b646ab2 (patch)
tree96d76428c1662fd30a025786aedad6ed2bf9251c /tools/codegen/src/com/android/codegen/ClassPrinter.kt
parent6faff849b609737347e684fa2aa6384983e9dd1e (diff)
parent3b2fe616fd26e9a2022f41589d7062ab12db3768 (diff)
Merge "Use dataclass codegen on a few initial framework classes"
Diffstat (limited to 'tools/codegen/src/com/android/codegen/ClassPrinter.kt')
-rw-r--r--tools/codegen/src/com/android/codegen/ClassPrinter.kt20
1 files changed, 15 insertions, 5 deletions
diff --git a/tools/codegen/src/com/android/codegen/ClassPrinter.kt b/tools/codegen/src/com/android/codegen/ClassPrinter.kt
index 22b5d8815e7d..1f0d4b8a7ec9 100644
--- a/tools/codegen/src/com/android/codegen/ClassPrinter.kt
+++ b/tools/codegen/src/com/android/codegen/ClassPrinter.kt
@@ -122,9 +122,13 @@ class ClassPrinter(
if (cliArgs.contains("--$kebabCase")) return true
val annotationKey = "gen$upperCamelCase"
+ val annotationHiddenKey = "genHidden$upperCamelCase"
if (dataClassAnnotationFeatures.containsKey(annotationKey)) {
return dataClassAnnotationFeatures[annotationKey]!!
}
+ if (dataClassAnnotationFeatures.containsKey(annotationHiddenKey)) {
+ return dataClassAnnotationFeatures[annotationHiddenKey]!!
+ }
if (cliArgs.contains("--all")) return true
if (hidden) return true
@@ -144,11 +148,17 @@ class ClassPrinter(
}
}
- val FeatureFlag.hidden
- get(): Boolean = when {
- cliArgs.contains("--hidden-$kebabCase") -> true
- this == FeatureFlag.BUILD_UPON -> FeatureFlag.BUILDER.hidden
- else -> false
+ val FeatureFlag.hidden: Boolean
+ get(): Boolean {
+ val annotationHiddenKey = "genHidden$upperCamelCase"
+ if (dataClassAnnotationFeatures.containsKey(annotationHiddenKey)) {
+ return dataClassAnnotationFeatures[annotationHiddenKey]!!
+ }
+ return when {
+ cliArgs.contains("--hidden-$kebabCase") -> true
+ this == FeatureFlag.BUILD_UPON -> FeatureFlag.BUILDER.hidden
+ else -> false
+ }
}
var currentIndent = INDENT_SINGLE