From db447da3dcee5646a575dbd58905811ed723ae7e Mon Sep 17 00:00:00 2001 From: Yi Wang Date: Mon, 20 Aug 2018 18:35:16 -0700 Subject: [PATCH] Use NeedleFoundation module prefix for generated code This avoids any ambiguity when the host application decalres a `ComponentType` type. --- .../DependencyProviderSerializer.swift | 2 +- .../PluginExtensionContentSerializer.swift | 2 +- .../NeedleFrameworkTests/Fixtures/HeaderDoc.txt | 3 +++ .../Fixtures/Pluginized/generated.swift | 15 +++++++++------ .../NeedleFrameworkTests/Fixtures/generated.swift | 11 +++++++---- .../DependencyProviderSerializerTaskTests.swift | 8 ++++---- .../PluginExtensionSerializerTaskTests.swift | 4 ++-- 7 files changed, 27 insertions(+), 18 deletions(-) diff --git a/Generator/Sources/NeedleFramework/Generating/Serializers/DependencyProviderSerializer.swift b/Generator/Sources/NeedleFramework/Generating/Serializers/DependencyProviderSerializer.swift index 093ea753..b2f31fa4 100644 --- a/Generator/Sources/NeedleFramework/Generating/Serializers/DependencyProviderSerializer.swift +++ b/Generator/Sources/NeedleFramework/Generating/Serializers/DependencyProviderSerializer.swift @@ -53,7 +53,7 @@ class DependencyProviderSerializer: Serializer { private class \(classNameSerializer.serialize()): \(provider.unprocessed.dependency.name) { \(propertiesSerializer.serialize()) \(sourceComponentsSerializer.serialize()) - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { \(initBodySerializer.serialize()) } }\n diff --git a/Generator/Sources/NeedleFramework/Generating/Serializers/Pluginized/PluginExtensionContentSerializer.swift b/Generator/Sources/NeedleFramework/Generating/Serializers/Pluginized/PluginExtensionContentSerializer.swift index 024de6cf..7e603607 100644 --- a/Generator/Sources/NeedleFramework/Generating/Serializers/Pluginized/PluginExtensionContentSerializer.swift +++ b/Generator/Sources/NeedleFramework/Generating/Serializers/Pluginized/PluginExtensionContentSerializer.swift @@ -45,7 +45,7 @@ class PluginExtensionContentSerializer: Serializer { private class \(extensionClassName): \(component.pluginExtension.name) { \(properties) private unowned let \(nonCoreComponentPropertyName): \(component.nonCoreComponent.name) - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { let \(pluginziedComponentPropertyName) = component as! \(component.data.name) \(nonCoreComponentPropertyName) = \(pluginziedComponentPropertyName).nonCoreComponent as! \(component.nonCoreComponent.name) } diff --git a/Generator/Tests/NeedleFrameworkTests/Fixtures/HeaderDoc.txt b/Generator/Tests/NeedleFrameworkTests/Fixtures/HeaderDoc.txt index 512d418a..6f82d37d 100644 --- a/Generator/Tests/NeedleFrameworkTests/Fixtures/HeaderDoc.txt +++ b/Generator/Tests/NeedleFrameworkTests/Fixtures/HeaderDoc.txt @@ -1,2 +1,5 @@ +// +// Copyright © Uber Technologies, Inc. All rights reserved. +// // @generated by Needle // swiftlint:disable custom_rules \ No newline at end of file diff --git a/Generator/Tests/NeedleFrameworkTests/Fixtures/Pluginized/generated.swift b/Generator/Tests/NeedleFrameworkTests/Fixtures/Pluginized/generated.swift index f31cc86e..117b30d7 100644 --- a/Generator/Tests/NeedleFrameworkTests/Fixtures/Pluginized/generated.swift +++ b/Generator/Tests/NeedleFrameworkTests/Fixtures/Pluginized/generated.swift @@ -1,3 +1,6 @@ +// +// Copyright © Uber Technologies, Inc. All rights reserved. +// // @generated by Needle // swiftlint:disable custom_rules @@ -51,7 +54,7 @@ private class LoggedOutDependencyacada53ea78d270efa2fProvider: LoggedOutDependen return rootComponent.mutablePlayersStream } private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { rootComponent = component.parent as! RootComponent } } @@ -61,7 +64,7 @@ private class ScoreSheetDependencyea879b8e06763171478bProvider: ScoreSheetDepend return (loggedInComponent.nonCoreComponent as! LoggedInNonCoreComponent).scoreStream } private let loggedInComponent: LoggedInComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent.parent.parent as! LoggedInComponent } } @@ -71,7 +74,7 @@ private class ScoreSheetDependency6fb80fa6e1ee31d9ba11Provider: ScoreSheetDepend return loggedInNonCoreComponent.scoreStream } private let loggedInNonCoreComponent: LoggedInNonCoreComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInNonCoreComponent = component.parent as! LoggedInNonCoreComponent } } @@ -85,7 +88,7 @@ private class GameDependency1ab5926a977f706d3195Provider: GameDependency { } private let loggedInComponent: LoggedInComponent private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent as! LoggedInComponent rootComponent = component.parent.parent as! RootComponent } @@ -96,7 +99,7 @@ private class GamePluginExtensionProvider: GamePluginExtension { return gameNonCoreComponent.scoreSheetBuilder } private unowned let gameNonCoreComponent: GameNonCoreComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { let gameComponent = component as! GameComponent gameNonCoreComponent = gameComponent.nonCoreComponent as! GameNonCoreComponent } @@ -110,7 +113,7 @@ private class LoggedInPluginExtensionProvider: LoggedInPluginExtension { return loggedInNonCoreComponent.mutableScoreStream } private unowned let loggedInNonCoreComponent: LoggedInNonCoreComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { let loggedInComponent = component as! LoggedInComponent loggedInNonCoreComponent = loggedInComponent.nonCoreComponent as! LoggedInNonCoreComponent } diff --git a/Generator/Tests/NeedleFrameworkTests/Fixtures/generated.swift b/Generator/Tests/NeedleFrameworkTests/Fixtures/generated.swift index ccdba139..8ebc6b6e 100644 --- a/Generator/Tests/NeedleFrameworkTests/Fixtures/generated.swift +++ b/Generator/Tests/NeedleFrameworkTests/Fixtures/generated.swift @@ -1,3 +1,6 @@ +// +// Copyright © Uber Technologies, Inc. All rights reserved. +// // @generated by Needle // swiftlint:disable custom_rules @@ -41,7 +44,7 @@ private class GameDependency1ab5926a977f706d3195Provider: GameDependency { } private let loggedInComponent: LoggedInComponent private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent as! LoggedInComponent rootComponent = component.parent.parent as! RootComponent } @@ -52,7 +55,7 @@ private class ScoreSheetDependency97f2595a691a56781aaaProvider: ScoreSheetDepend return loggedInComponent.scoreStream } private let loggedInComponent: LoggedInComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent.parent as! LoggedInComponent } } @@ -62,7 +65,7 @@ private class ScoreSheetDependencycbd7fa4bae2ee69a1926Provider: ScoreSheetDepend return loggedInComponent.scoreStream } private let loggedInComponent: LoggedInComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent as! LoggedInComponent } } @@ -72,7 +75,7 @@ private class LoggedOutDependencyacada53ea78d270efa2fProvider: LoggedOutDependen return rootComponent.mutablePlayersStream } private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { rootComponent = component.parent as! RootComponent } } diff --git a/Generator/Tests/NeedleFrameworkTests/Generating/DependencyProviderSerializerTaskTests.swift b/Generator/Tests/NeedleFrameworkTests/Generating/DependencyProviderSerializerTaskTests.swift index 987a0f41..e07e5cb6 100644 --- a/Generator/Tests/NeedleFrameworkTests/Generating/DependencyProviderSerializerTaskTests.swift +++ b/Generator/Tests/NeedleFrameworkTests/Generating/DependencyProviderSerializerTaskTests.swift @@ -73,7 +73,7 @@ class DependencyProviderSerializerTaskTests: AbstractGeneratorTests { } private let loggedInComponent: LoggedInComponent private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent as! LoggedInComponent rootComponent = component.parent.parent as! RootComponent } @@ -84,7 +84,7 @@ class DependencyProviderSerializerTaskTests: AbstractGeneratorTests { return loggedInComponent.scoreStream } private let loggedInComponent: LoggedInComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent.parent as! LoggedInComponent } } @@ -94,7 +94,7 @@ class DependencyProviderSerializerTaskTests: AbstractGeneratorTests { return loggedInComponent.scoreStream } private let loggedInComponent: LoggedInComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { loggedInComponent = component.parent as! LoggedInComponent } } @@ -104,7 +104,7 @@ class DependencyProviderSerializerTaskTests: AbstractGeneratorTests { return rootComponent.mutablePlayersStream } private let rootComponent: RootComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { rootComponent = component.parent as! RootComponent } }\n diff --git a/Generator/Tests/NeedleFrameworkTests/Generating/Pluginized/PluginExtensionSerializerTaskTests.swift b/Generator/Tests/NeedleFrameworkTests/Generating/Pluginized/PluginExtensionSerializerTaskTests.swift index 978636c5..75930fa3 100644 --- a/Generator/Tests/NeedleFrameworkTests/Generating/Pluginized/PluginExtensionSerializerTaskTests.swift +++ b/Generator/Tests/NeedleFrameworkTests/Generating/Pluginized/PluginExtensionSerializerTaskTests.swift @@ -58,7 +58,7 @@ class PluginExtensionSerializerTaskTests: AbstractPluginizedGeneratorTests { return gameNonCoreComponent.scoreSheetBuilder } private unowned let gameNonCoreComponent: GameNonCoreComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { let gameComponent = component as! GameComponent gameNonCoreComponent = gameComponent.nonCoreComponent as! GameNonCoreComponent } @@ -73,7 +73,7 @@ class PluginExtensionSerializerTaskTests: AbstractPluginizedGeneratorTests { return loggedInNonCoreComponent.mutableScoreStream } private unowned let loggedInNonCoreComponent: LoggedInNonCoreComponent - init(component: ComponentType) { + init(component: NeedleFoundation.ComponentType) { let loggedInComponent = component as! LoggedInComponent loggedInNonCoreComponent = loggedInComponent.nonCoreComponent as! LoggedInNonCoreComponent }