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
This commit is contained in:
Paul Duffin
2020-02-21 16:06:25 +00:00
parent 598e1e0255
commit 28246ac9ee
2 changed files with 31 additions and 6 deletions

View File

@@ -31,13 +31,20 @@ func (t removeFredTransformation) transformProperty(name string, value interface
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}