Loading android/sdk.go +19 −0 Original line number Diff line number Diff line Loading @@ -218,6 +218,25 @@ type SdkMember interface { Variants() []SdkAware } type SdkMemberTypeDependencyTag interface { blueprint.DependencyTag SdkMemberType() SdkMemberType } type sdkMemberDependencyTag struct { blueprint.BaseDependencyTag memberType SdkMemberType } func (t *sdkMemberDependencyTag) SdkMemberType() SdkMemberType { return t.memberType } func DependencyTagForSdkMemberType(memberType SdkMemberType) SdkMemberTypeDependencyTag { return &sdkMemberDependencyTag{memberType: memberType} } // Interface that must be implemented for every type that can be a member of an // sdk. // Loading sdk/sdk.go +2 −9 Original line number Diff line number Diff line Loading @@ -65,11 +65,6 @@ type sdkProperties struct { Module_exports bool `blueprint:"mutated"` } type sdkMemberDependencyTag struct { blueprint.BaseDependencyTag memberType android.SdkMemberType } // Contains information about the sdk properties that list sdk members, e.g. // Java_header_libs. type sdkMemberListProperty struct { Loading @@ -81,7 +76,7 @@ type sdkMemberListProperty struct { // the dependency tag used for items in this list that can be used to determine the memberType // for a resolved dependency. dependencyTag *sdkMemberDependencyTag dependencyTag android.SdkMemberTypeDependencyTag } func (p *sdkMemberListProperty) propertyName() string { Loading Loading @@ -167,9 +162,7 @@ func createDynamicSdkMemberTypes(sdkMemberTypes []android.SdkMemberType) *dynami memberType: memberType, dependencyTag: &sdkMemberDependencyTag{ memberType: memberType, }, dependencyTag: android.DependencyTagForSdkMemberType(memberType), } listProperties = append(listProperties, memberListProperty) Loading sdk/update.go +2 −2 Original line number Diff line number Diff line Loading @@ -113,8 +113,8 @@ func (s *sdk) collectMembers(ctx android.ModuleContext) []*sdkMember { ctx.VisitDirectDeps(func(m android.Module) { tag := ctx.OtherModuleDependencyTag(m) if memberTag, ok := tag.(*sdkMemberDependencyTag); ok { memberType := memberTag.memberType if memberTag, ok := tag.(android.SdkMemberTypeDependencyTag); ok { memberType := memberTag.SdkMemberType() // Make sure that the resolved module is allowed in the member list property. if !memberType.IsInstance(m) { Loading Loading
android/sdk.go +19 −0 Original line number Diff line number Diff line Loading @@ -218,6 +218,25 @@ type SdkMember interface { Variants() []SdkAware } type SdkMemberTypeDependencyTag interface { blueprint.DependencyTag SdkMemberType() SdkMemberType } type sdkMemberDependencyTag struct { blueprint.BaseDependencyTag memberType SdkMemberType } func (t *sdkMemberDependencyTag) SdkMemberType() SdkMemberType { return t.memberType } func DependencyTagForSdkMemberType(memberType SdkMemberType) SdkMemberTypeDependencyTag { return &sdkMemberDependencyTag{memberType: memberType} } // Interface that must be implemented for every type that can be a member of an // sdk. // Loading
sdk/sdk.go +2 −9 Original line number Diff line number Diff line Loading @@ -65,11 +65,6 @@ type sdkProperties struct { Module_exports bool `blueprint:"mutated"` } type sdkMemberDependencyTag struct { blueprint.BaseDependencyTag memberType android.SdkMemberType } // Contains information about the sdk properties that list sdk members, e.g. // Java_header_libs. type sdkMemberListProperty struct { Loading @@ -81,7 +76,7 @@ type sdkMemberListProperty struct { // the dependency tag used for items in this list that can be used to determine the memberType // for a resolved dependency. dependencyTag *sdkMemberDependencyTag dependencyTag android.SdkMemberTypeDependencyTag } func (p *sdkMemberListProperty) propertyName() string { Loading Loading @@ -167,9 +162,7 @@ func createDynamicSdkMemberTypes(sdkMemberTypes []android.SdkMemberType) *dynami memberType: memberType, dependencyTag: &sdkMemberDependencyTag{ memberType: memberType, }, dependencyTag: android.DependencyTagForSdkMemberType(memberType), } listProperties = append(listProperties, memberListProperty) Loading
sdk/update.go +2 −2 Original line number Diff line number Diff line Loading @@ -113,8 +113,8 @@ func (s *sdk) collectMembers(ctx android.ModuleContext) []*sdkMember { ctx.VisitDirectDeps(func(m android.Module) { tag := ctx.OtherModuleDependencyTag(m) if memberTag, ok := tag.(*sdkMemberDependencyTag); ok { memberType := memberTag.memberType if memberTag, ok := tag.(android.SdkMemberTypeDependencyTag); ok { memberType := memberTag.SdkMemberType() // Make sure that the resolved module is allowed in the member list property. if !memberType.IsInstance(m) { Loading