Add support for transforming a property set after its contents
This change adds support for transforming a property set after its
contents. This allows a transform to recursively prune empty property
sets that were created for a module.
The transformPropertySet method was renamed to
transformPropertySetBeforeContents and a new
transformPropertySetAfterContents method was added.
Bug: 148933848
Bug: 153306490
Test: m nothing
Merged-In: Ia198d47e042b98c69406db4bc12859869816a387
Change-Id: Ia198d47e042b98c69406db4bc12859869816a387
diff --git a/sdk/bp_test.go b/sdk/bp_test.go
index 4414ee9..f89f38c 100644
--- a/sdk/bp_test.go
+++ b/sdk/bp_test.go
@@ -31,13 +31,20 @@
return value, tag
}
-func (t removeFredTransformation) transformPropertySet(name string, propertySet *bpPropertySet, tag android.BpPropertyTag) (*bpPropertySet, android.BpPropertyTag) {
+func (t removeFredTransformation) transformPropertySetBeforeContents(name string, propertySet *bpPropertySet, tag android.BpPropertyTag) (*bpPropertySet, android.BpPropertyTag) {
if name == "fred" {
return nil, nil
}
return propertySet, tag
}
+func (t removeFredTransformation) transformPropertySetAfterContents(name string, propertySet *bpPropertySet, tag android.BpPropertyTag) (*bpPropertySet, android.BpPropertyTag) {
+ if len(propertySet.properties) == 0 {
+ return nil, nil
+ }
+ return propertySet, tag
+}
+
func TestTransformRemoveProperty(t *testing.T) {
helper := &TestHelper{t}