diff --git a/.github/workflows/swift.yml b/.github/workflows/swift.yml new file mode 100644 index 0000000..9306888 --- /dev/null +++ b/.github/workflows/swift.yml @@ -0,0 +1,15 @@ +name: Swift + +on: [push] + +jobs: + build: + + runs-on: macOS-latest + + steps: + - uses: actions/checkout@v2 + - name: Build + run: swift build -v + - name: Run tests + run: swift test -v diff --git a/.gitignore b/.gitignore index 030c8a9..95c4320 100644 --- a/.gitignore +++ b/.gitignore @@ -1,29 +1,5 @@ -# Xcode .DS_Store -*/build/* -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata -profile -*.moved-aside -DerivedData -.idea/ -*.hmap -*.xccheckout -*.xcuserstate - -timeline.xctimeline - -#CocoaPods -Pods -Tests/Pods -Tests/Podfile.lock - -#Carthage -Carthage/Build \ No newline at end of file +/.build +/Packages +/*.xcodeproj +xcuserdata/ diff --git a/Package.swift b/Package.swift index a08a93a..0b5e908 100644 --- a/Package.swift +++ b/Package.swift @@ -1,27 +1,51 @@ -// swift-tools-version:5.1 +// swift-tools-version:5.2 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "RetroObjective", + platforms: [.macOS(.v10_15), .iOS(.v13), .watchOS(.v6), .tvOS(.v13)], products: [ // Products define the executables and libraries produced by a package, and make them visible to other packages. + .library( + name: "RetroObjectiveObjC", + targets: ["RetroObjectiveObjC"]), .library( name: "RetroObjective", targets: ["RetroObjective"]), + .library( + name: "RetroObjectiveCombine", + targets: ["RetroObjectiveCombine"]), ], dependencies: [ // Dependencies declare other packages that this package depends on. // .package(url: /* package url */, from: "1.0.0"), ], targets: [ - // Targets are the basic building blocks of a package. A target can define a module or a test suite. - // Targets can depend on other targets in this package, and on products in packages which this package depends on. + .target( + name: "RetroObjectiveObjC", + path: "Sources/RetroObjectiveObjC", + publicHeadersPath: "" + ), .target( name: "RetroObjective", - dependencies: []), + dependencies: [ + .target(name: "RetroObjectiveObjC") + ]), .target( + name: "RetroObjectiveCombine", + dependencies: [ + .target(name: "RetroObjective") + ]), + .testTarget( name: "RetroObjectiveTests", - dependencies: ["RetroObjective"]) + dependencies: [ + .target(name: "RetroObjective") + ]), + .testTarget( + name: "RetroObjectiveCombineTests", + dependencies: [ + .target(name: "RetroObjectiveCombine") + ]) ] ) diff --git a/README.md b/README.md index 283636a..d197879 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,19 @@ scrollView.delegateProxy print(scrollView.contentOffset) } ``` +## Basic Example with Combine + +You can add a new publisher on UIScrollView + +```Swift +extension UISCrollView { + var value: AnyPublisher { + Publishers.proxyDelegate(delegateProxy, selector: #selector(UIScrollViewDelegate.scrollViewDidScroll(_:))) + .compactMap { $0.value(at: 0) as? UISCrollView } + .eraseToAnyPublisher() + } +} +``` ## Contribution Welcome to fork and submit pull requests!! diff --git a/RetroObjective.podspec b/RetroObjective.podspec index 46e288d..a2c7a79 100644 --- a/RetroObjective.podspec +++ b/RetroObjective.podspec @@ -11,8 +11,9 @@ Pod::Spec.new do |s| s.watchos.deployment_target = '3.0' s.requires_arc = true s.source = { :git => "https://github.com/amine2233/RetroObjective.git", :tag => s.version.to_s } - s.source_files = "Sources/**/*.{h,m,swift}" - s.module_name = s.name + s.source_files = "Sources/**/*.{h,m,swift}" + s.exclude_files = "Sources/RetroObjective/Exports.swift" + s.module_name = s.name s.swift_version = "5.0" s.pod_target_xcconfig = { 'SWIFT_VERSION' => s.swift_version.to_s diff --git a/RetroObjective.xcodeproj/project.pbxproj b/RetroObjective.xcodeproj/project.pbxproj deleted file mode 100644 index 2e9ff63..0000000 --- a/RetroObjective.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1782 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - 6732FE2523DAD1480019259F /* DelegateProxyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6732FE2423DAD1480019259F /* DelegateProxyTests.swift */; }; - 6732FE2623DAD1480019259F /* DelegateProxyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6732FE2423DAD1480019259F /* DelegateProxyTests.swift */; }; - 6732FE2723DAD1480019259F /* DelegateProxyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6732FE2423DAD1480019259F /* DelegateProxyTests.swift */; }; - 6733187D23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733187C23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift */; }; - 6733187E23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733187C23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift */; }; - 6733187F23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733187C23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift */; }; - 6733188123DACAC30018EC3D /* RetroObjective.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733188023DACAC30018EC3D /* RetroObjective.swift */; }; - 6733188223DACAC30018EC3D /* RetroObjective.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733188023DACAC30018EC3D /* RetroObjective.swift */; }; - 6733188323DACAC30018EC3D /* RetroObjective.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6733188023DACAC30018EC3D /* RetroObjective.swift */; }; - 67744F2023D8212B00639942 /* Arguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F1F23D8212B00639942 /* Arguments.swift */; }; - 67744F2123D8212B00639942 /* Arguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F1F23D8212B00639942 /* Arguments.swift */; }; - 67744F2223D8212B00639942 /* Arguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F1F23D8212B00639942 /* Arguments.swift */; }; - 67744F2323D8212B00639942 /* Arguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F1F23D8212B00639942 /* Arguments.swift */; }; - 67744F2523D8224900639942 /* RetroObjectiveProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */; }; - 67744F2623D8224900639942 /* RetroObjectiveProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */; }; - 67744F2723D8224900639942 /* RetroObjectiveProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */; }; - 67744F2823D8224900639942 /* RetroObjectiveProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */; }; - 67744F2A23D8231100639942 /* RetroObjectiveProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */; }; - 67744F2B23D8231100639942 /* RetroObjectiveProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */; }; - 67744F2C23D8231100639942 /* RetroObjectiveProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */; }; - 67744F2D23D8231100639942 /* RetroObjectiveProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */; }; - 67744F2F23D8248F00639942 /* Receivable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2E23D8248F00639942 /* Receivable.swift */; }; - 67744F3023D8248F00639942 /* Receivable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2E23D8248F00639942 /* Receivable.swift */; }; - 67744F3123D8248F00639942 /* Receivable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2E23D8248F00639942 /* Receivable.swift */; }; - 67744F3223D8248F00639942 /* Receivable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F2E23D8248F00639942 /* Receivable.swift */; }; - 67744F3423D8250700639942 /* Receiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F3323D8250700639942 /* Receiver.swift */; }; - 67744F3523D8250700639942 /* Receiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F3323D8250700639942 /* Receiver.swift */; }; - 67744F3623D8250700639942 /* Receiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F3323D8250700639942 /* Receiver.swift */; }; - 67744F3723D8250700639942 /* Receiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67744F3323D8250700639942 /* Receiver.swift */; }; - 67F5623C23D6D48A0070E964 /* RetroObjective.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 67F5623223D6D48A0070E964 /* RetroObjective.framework */; }; - 67F5626523D6D4A10070E964 /* RetroObjective.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 67F5625C23D6D4A10070E964 /* RetroObjective.framework */; }; - 67F5628123D6D4B00070E964 /* RetroObjective.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 67F5627823D6D4B00070E964 /* RetroObjective.framework */; }; - 67F5629823D6D62B0070E964 /* RetroObjective.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F5629723D6D62B0070E964 /* RetroObjective.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F5629923D6D62B0070E964 /* RetroObjective.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F5629723D6D62B0070E964 /* RetroObjective.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F5629A23D6D62B0070E964 /* RetroObjective.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F5629723D6D62B0070E964 /* RetroObjective.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F5629B23D6D62B0070E964 /* RetroObjective.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F5629723D6D62B0070E964 /* RetroObjective.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562A623D6D9440070E964 /* DelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562A423D6D9440070E964 /* DelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562A723D6D9440070E964 /* DelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562A423D6D9440070E964 /* DelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562A823D6D9440070E964 /* DelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562A423D6D9440070E964 /* DelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562A923D6D9440070E964 /* DelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562A423D6D9440070E964 /* DelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562AA23D6D9440070E964 /* DelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562A523D6D9440070E964 /* DelegateProxy.m */; }; - 67F562AB23D6D9440070E964 /* DelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562A523D6D9440070E964 /* DelegateProxy.m */; }; - 67F562AC23D6D9440070E964 /* DelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562A523D6D9440070E964 /* DelegateProxy.m */; }; - 67F562AD23D6D9440070E964 /* DelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562A523D6D9440070E964 /* DelegateProxy.m */; }; - 67F562B023D6D9E70070E964 /* RORuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562AE23D6D9E70070E964 /* RORuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562B123D6D9E70070E964 /* RORuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562AE23D6D9E70070E964 /* RORuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562B223D6D9E70070E964 /* RORuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562AE23D6D9E70070E964 /* RORuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562B323D6D9E70070E964 /* RORuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 67F562AE23D6D9E70070E964 /* RORuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 67F562B423D6D9E70070E964 /* RORuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562AF23D6D9E70070E964 /* RORuntime.m */; }; - 67F562B523D6D9E70070E964 /* RORuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562AF23D6D9E70070E964 /* RORuntime.m */; }; - 67F562B623D6D9E70070E964 /* RORuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562AF23D6D9E70070E964 /* RORuntime.m */; }; - 67F562B723D6D9E70070E964 /* RORuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = 67F562AF23D6D9E70070E964 /* RORuntime.m */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 67F5623D23D6D48A0070E964 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 67F5622723D6D4700070E964 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 67F5623123D6D48A0070E964; - remoteInfo = "RetroObjective iOS"; - }; - 67F5626623D6D4A10070E964 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 67F5622723D6D4700070E964 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 67F5625B23D6D4A10070E964; - remoteInfo = "RetroObjective tvOS"; - }; - 67F5628223D6D4B00070E964 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 67F5622723D6D4700070E964 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 67F5627723D6D4B00070E964; - remoteInfo = "RetroObjective macOS"; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 6732FE2423DAD1480019259F /* DelegateProxyTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DelegateProxyTests.swift; sourceTree = ""; }; - 6733187923DACAA90018EC3D /* RetroObjectiveTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "RetroObjectiveTests-Bridging-Header.h"; sourceTree = ""; }; - 6733187C23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AssociatedRetroObjectiveTests.swift; sourceTree = ""; }; - 6733188023DACAC30018EC3D /* RetroObjective.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RetroObjective.swift; sourceTree = ""; }; - 67744F1F23D8212B00639942 /* Arguments.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Arguments.swift; sourceTree = ""; }; - 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RetroObjectiveProxyType.swift; sourceTree = ""; }; - 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RetroObjectiveProxy.swift; sourceTree = ""; }; - 67744F2E23D8248F00639942 /* Receivable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Receivable.swift; sourceTree = ""; }; - 67744F3323D8250700639942 /* Receiver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Receiver.swift; sourceTree = ""; }; - 67F5623223D6D48A0070E964 /* RetroObjective.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RetroObjective.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5623B23D6D48A0070E964 /* RetroObjectiveTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RetroObjectiveTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5624F23D6D4960070E964 /* RetroObjective.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RetroObjective.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5625C23D6D4A10070E964 /* RetroObjective.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RetroObjective.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5626423D6D4A10070E964 /* RetroObjectiveTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RetroObjectiveTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5627823D6D4B00070E964 /* RetroObjective.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RetroObjective.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5628023D6D4B00070E964 /* RetroObjectiveTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RetroObjectiveTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 67F5629323D6D61F0070E964 /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOS.plist"; sourceTree = ""; }; - 67F5629423D6D6200070E964 /* Info-watchOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-watchOS.plist"; sourceTree = ""; }; - 67F5629523D6D6200070E964 /* Info-tvOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-tvOS.plist"; sourceTree = ""; }; - 67F5629623D6D6200070E964 /* Info-macOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-macOS.plist"; sourceTree = ""; }; - 67F5629723D6D62B0070E964 /* RetroObjective.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RetroObjective.h; sourceTree = ""; }; - 67F5629C23D6D6380070E964 /* Info-tvOSTests.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-tvOSTests.plist"; sourceTree = ""; }; - 67F5629D23D6D6380070E964 /* Info-iOSTests.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOSTests.plist"; sourceTree = ""; }; - 67F5629E23D6D6380070E964 /* Info-macOSTests.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-macOSTests.plist"; sourceTree = ""; }; - 67F5629F23D6D82C0070E964 /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; }; - 67F562A423D6D9440070E964 /* DelegateProxy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DelegateProxy.h; sourceTree = ""; }; - 67F562A523D6D9440070E964 /* DelegateProxy.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DelegateProxy.m; sourceTree = ""; }; - 67F562AE23D6D9E70070E964 /* RORuntime.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RORuntime.h; sourceTree = ""; }; - 67F562AF23D6D9E70070E964 /* RORuntime.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RORuntime.m; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 67F5622F23D6D48A0070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5623823D6D48A0070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F5623C23D6D48A0070E964 /* RetroObjective.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5624C23D6D4960070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5625923D6D4A10070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5626123D6D4A10070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F5626523D6D4A10070E964 /* RetroObjective.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627523D6D4B00070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627D23D6D4B00070E964 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F5628123D6D4B00070E964 /* RetroObjective.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 67F5622623D6D4700070E964 = { - isa = PBXGroup; - children = ( - 67F5629F23D6D82C0070E964 /* Package.swift */, - 67F5628F23D6D5190070E964 /* Sources */, - 67F5629123D6D52B0070E964 /* Tests */, - 67F5623323D6D48A0070E964 /* Products */, - ); - sourceTree = ""; - }; - 67F5623323D6D48A0070E964 /* Products */ = { - isa = PBXGroup; - children = ( - 67F5623223D6D48A0070E964 /* RetroObjective.framework */, - 67F5623B23D6D48A0070E964 /* RetroObjectiveTests.xctest */, - 67F5624F23D6D4960070E964 /* RetroObjective.framework */, - 67F5625C23D6D4A10070E964 /* RetroObjective.framework */, - 67F5626423D6D4A10070E964 /* RetroObjectiveTests.xctest */, - 67F5627823D6D4B00070E964 /* RetroObjective.framework */, - 67F5628023D6D4B00070E964 /* RetroObjectiveTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 67F5628F23D6D5190070E964 /* Sources */ = { - isa = PBXGroup; - children = ( - 67F5629323D6D61F0070E964 /* Info-iOS.plist */, - 67F5629623D6D6200070E964 /* Info-macOS.plist */, - 67F5629523D6D6200070E964 /* Info-tvOS.plist */, - 67F5629423D6D6200070E964 /* Info-watchOS.plist */, - 67F5629023D6D5250070E964 /* RetroObjective */, - ); - path = Sources; - sourceTree = ""; - }; - 67F5629023D6D5250070E964 /* RetroObjective */ = { - isa = PBXGroup; - children = ( - 67F5629723D6D62B0070E964 /* RetroObjective.h */, - 67F562A423D6D9440070E964 /* DelegateProxy.h */, - 67F562A523D6D9440070E964 /* DelegateProxy.m */, - 67F562AE23D6D9E70070E964 /* RORuntime.h */, - 67F562AF23D6D9E70070E964 /* RORuntime.m */, - 67744F1F23D8212B00639942 /* Arguments.swift */, - 67744F2923D8231100639942 /* RetroObjectiveProxy.swift */, - 67744F2423D8224900639942 /* RetroObjectiveProxyType.swift */, - 67744F2E23D8248F00639942 /* Receivable.swift */, - 67744F3323D8250700639942 /* Receiver.swift */, - ); - path = RetroObjective; - sourceTree = ""; - }; - 67F5629123D6D52B0070E964 /* Tests */ = { - isa = PBXGroup; - children = ( - 67F5629D23D6D6380070E964 /* Info-iOSTests.plist */, - 67F5629E23D6D6380070E964 /* Info-macOSTests.plist */, - 67F5629C23D6D6380070E964 /* Info-tvOSTests.plist */, - 67F5629223D6D5320070E964 /* RetroObjectiveTests */, - ); - path = Tests; - sourceTree = ""; - }; - 67F5629223D6D5320070E964 /* RetroObjectiveTests */ = { - isa = PBXGroup; - children = ( - 6733187923DACAA90018EC3D /* RetroObjectiveTests-Bridging-Header.h */, - 6733188023DACAC30018EC3D /* RetroObjective.swift */, - 6733187C23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift */, - 6732FE2423DAD1480019259F /* DelegateProxyTests.swift */, - ); - path = RetroObjectiveTests; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 67F5622D23D6D48A0070E964 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F562B023D6D9E70070E964 /* RORuntime.h in Headers */, - 67F562A623D6D9440070E964 /* DelegateProxy.h in Headers */, - 67F5629823D6D62B0070E964 /* RetroObjective.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5624A23D6D4960070E964 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F562B123D6D9E70070E964 /* RORuntime.h in Headers */, - 67F562A723D6D9440070E964 /* DelegateProxy.h in Headers */, - 67F5629923D6D62B0070E964 /* RetroObjective.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5625723D6D4A10070E964 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F562B223D6D9E70070E964 /* RORuntime.h in Headers */, - 67F562A823D6D9440070E964 /* DelegateProxy.h in Headers */, - 67F5629A23D6D62B0070E964 /* RetroObjective.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627323D6D4B00070E964 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 67F562B323D6D9E70070E964 /* RORuntime.h in Headers */, - 67F562A923D6D9440070E964 /* DelegateProxy.h in Headers */, - 67F5629B23D6D62B0070E964 /* RetroObjective.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 67F5623123D6D48A0070E964 /* RetroObjective iOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5624423D6D48A0070E964 /* Build configuration list for PBXNativeTarget "RetroObjective iOS" */; - buildPhases = ( - 67F5622D23D6D48A0070E964 /* Headers */, - 67F5622E23D6D48A0070E964 /* Sources */, - 67F5622F23D6D48A0070E964 /* Frameworks */, - 67F5623023D6D48A0070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "RetroObjective iOS"; - productName = "RetroObjective iOS"; - productReference = 67F5623223D6D48A0070E964 /* RetroObjective.framework */; - productType = "com.apple.product-type.framework"; - }; - 67F5623A23D6D48A0070E964 /* RetroObjective iOSTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5624723D6D48A0070E964 /* Build configuration list for PBXNativeTarget "RetroObjective iOSTests" */; - buildPhases = ( - 67F5623723D6D48A0070E964 /* Sources */, - 67F5623823D6D48A0070E964 /* Frameworks */, - 67F5623923D6D48A0070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 67F5623E23D6D48A0070E964 /* PBXTargetDependency */, - ); - name = "RetroObjective iOSTests"; - productName = "RetroObjective iOSTests"; - productReference = 67F5623B23D6D48A0070E964 /* RetroObjectiveTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 67F5624E23D6D4960070E964 /* RetroObjective watchOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5625423D6D4960070E964 /* Build configuration list for PBXNativeTarget "RetroObjective watchOS" */; - buildPhases = ( - 67F5624A23D6D4960070E964 /* Headers */, - 67F5624B23D6D4960070E964 /* Sources */, - 67F5624C23D6D4960070E964 /* Frameworks */, - 67F5624D23D6D4960070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "RetroObjective watchOS"; - productName = "RetroObjective watchOS"; - productReference = 67F5624F23D6D4960070E964 /* RetroObjective.framework */; - productType = "com.apple.product-type.framework"; - }; - 67F5625B23D6D4A10070E964 /* RetroObjective tvOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5626D23D6D4A10070E964 /* Build configuration list for PBXNativeTarget "RetroObjective tvOS" */; - buildPhases = ( - 67F5625723D6D4A10070E964 /* Headers */, - 67F5625823D6D4A10070E964 /* Sources */, - 67F5625923D6D4A10070E964 /* Frameworks */, - 67F5625A23D6D4A10070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "RetroObjective tvOS"; - productName = "RetroObjective tvOS"; - productReference = 67F5625C23D6D4A10070E964 /* RetroObjective.framework */; - productType = "com.apple.product-type.framework"; - }; - 67F5626323D6D4A10070E964 /* RetroObjective tvOSTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5627023D6D4A10070E964 /* Build configuration list for PBXNativeTarget "RetroObjective tvOSTests" */; - buildPhases = ( - 67F5626023D6D4A10070E964 /* Sources */, - 67F5626123D6D4A10070E964 /* Frameworks */, - 67F5626223D6D4A10070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 67F5626723D6D4A10070E964 /* PBXTargetDependency */, - ); - name = "RetroObjective tvOSTests"; - productName = "RetroObjective tvOSTests"; - productReference = 67F5626423D6D4A10070E964 /* RetroObjectiveTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 67F5627723D6D4B00070E964 /* RetroObjective macOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5628923D6D4B00070E964 /* Build configuration list for PBXNativeTarget "RetroObjective macOS" */; - buildPhases = ( - 67F5627323D6D4B00070E964 /* Headers */, - 67F5627423D6D4B00070E964 /* Sources */, - 67F5627523D6D4B00070E964 /* Frameworks */, - 67F5627623D6D4B00070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "RetroObjective macOS"; - productName = "RetroObjective macOS"; - productReference = 67F5627823D6D4B00070E964 /* RetroObjective.framework */; - productType = "com.apple.product-type.framework"; - }; - 67F5627F23D6D4B00070E964 /* RetroObjective macOSTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 67F5628C23D6D4B00070E964 /* Build configuration list for PBXNativeTarget "RetroObjective macOSTests" */; - buildPhases = ( - 67F5627C23D6D4B00070E964 /* Sources */, - 67F5627D23D6D4B00070E964 /* Frameworks */, - 67F5627E23D6D4B00070E964 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 67F5628323D6D4B00070E964 /* PBXTargetDependency */, - ); - name = "RetroObjective macOSTests"; - productName = "RetroObjective macOSTests"; - productReference = 67F5628023D6D4B00070E964 /* RetroObjectiveTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 67F5622723D6D4700070E964 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 1130; - LastUpgradeCheck = 1130; - TargetAttributes = { - 67F5623123D6D48A0070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5623A23D6D48A0070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5624E23D6D4960070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5625B23D6D4A10070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5626323D6D4A10070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5627723D6D4B00070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - 67F5627F23D6D4B00070E964 = { - CreatedOnToolsVersion = 11.3.1; - LastSwiftMigration = 1130; - }; - }; - }; - buildConfigurationList = 67F5622A23D6D4700070E964 /* Build configuration list for PBXProject "RetroObjective" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 67F5622623D6D4700070E964; - productRefGroup = 67F5623323D6D48A0070E964 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 67F5623123D6D48A0070E964 /* RetroObjective iOS */, - 67F5623A23D6D48A0070E964 /* RetroObjective iOSTests */, - 67F5624E23D6D4960070E964 /* RetroObjective watchOS */, - 67F5625B23D6D4A10070E964 /* RetroObjective tvOS */, - 67F5626323D6D4A10070E964 /* RetroObjective tvOSTests */, - 67F5627723D6D4B00070E964 /* RetroObjective macOS */, - 67F5627F23D6D4B00070E964 /* RetroObjective macOSTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 67F5623023D6D48A0070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5623923D6D48A0070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5624D23D6D4960070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5625A23D6D4A10070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5626223D6D4A10070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627623D6D4B00070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627E23D6D4B00070E964 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 67F5622E23D6D48A0070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 67744F2023D8212B00639942 /* Arguments.swift in Sources */, - 67744F3423D8250700639942 /* Receiver.swift in Sources */, - 67F562AA23D6D9440070E964 /* DelegateProxy.m in Sources */, - 67744F2A23D8231100639942 /* RetroObjectiveProxy.swift in Sources */, - 67744F2F23D8248F00639942 /* Receivable.swift in Sources */, - 67F562B423D6D9E70070E964 /* RORuntime.m in Sources */, - 67744F2523D8224900639942 /* RetroObjectiveProxyType.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5623723D6D48A0070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6732FE2523DAD1480019259F /* DelegateProxyTests.swift in Sources */, - 6733188123DACAC30018EC3D /* RetroObjective.swift in Sources */, - 6733187D23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5624B23D6D4960070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 67744F2123D8212B00639942 /* Arguments.swift in Sources */, - 67744F3523D8250700639942 /* Receiver.swift in Sources */, - 67F562AB23D6D9440070E964 /* DelegateProxy.m in Sources */, - 67744F2B23D8231100639942 /* RetroObjectiveProxy.swift in Sources */, - 67744F3023D8248F00639942 /* Receivable.swift in Sources */, - 67F562B523D6D9E70070E964 /* RORuntime.m in Sources */, - 67744F2623D8224900639942 /* RetroObjectiveProxyType.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5625823D6D4A10070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 67744F2223D8212B00639942 /* Arguments.swift in Sources */, - 67744F3623D8250700639942 /* Receiver.swift in Sources */, - 67F562AC23D6D9440070E964 /* DelegateProxy.m in Sources */, - 67744F2C23D8231100639942 /* RetroObjectiveProxy.swift in Sources */, - 67744F3123D8248F00639942 /* Receivable.swift in Sources */, - 67F562B623D6D9E70070E964 /* RORuntime.m in Sources */, - 67744F2723D8224900639942 /* RetroObjectiveProxyType.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5626023D6D4A10070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6732FE2623DAD1480019259F /* DelegateProxyTests.swift in Sources */, - 6733188223DACAC30018EC3D /* RetroObjective.swift in Sources */, - 6733187E23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627423D6D4B00070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 67744F2323D8212B00639942 /* Arguments.swift in Sources */, - 67744F3723D8250700639942 /* Receiver.swift in Sources */, - 67F562AD23D6D9440070E964 /* DelegateProxy.m in Sources */, - 67744F2D23D8231100639942 /* RetroObjectiveProxy.swift in Sources */, - 67744F3223D8248F00639942 /* Receivable.swift in Sources */, - 67F562B723D6D9E70070E964 /* RORuntime.m in Sources */, - 67744F2823D8224900639942 /* RetroObjectiveProxyType.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 67F5627C23D6D4B00070E964 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6732FE2723DAD1480019259F /* DelegateProxyTests.swift in Sources */, - 6733188323DACAC30018EC3D /* RetroObjective.swift in Sources */, - 6733187F23DACAA90018EC3D /* AssociatedRetroObjectiveTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 67F5623E23D6D48A0070E964 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 67F5623123D6D48A0070E964 /* RetroObjective iOS */; - targetProxy = 67F5623D23D6D48A0070E964 /* PBXContainerItemProxy */; - }; - 67F5626723D6D4A10070E964 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 67F5625B23D6D4A10070E964 /* RetroObjective tvOS */; - targetProxy = 67F5626623D6D4A10070E964 /* PBXContainerItemProxy */; - }; - 67F5628323D6D4B00070E964 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 67F5627723D6D4B00070E964 /* RetroObjective macOS */; - targetProxy = 67F5628223D6D4B00070E964 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - 67F5622B23D6D4700070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_NAME = "$(PROJECT_NAME)"; - SWIFT_PRECOMPILE_BRIDGING_HEADER = YES; - }; - name = Debug; - }; - 67F5622C23D6D4700070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_NAME = "$(PROJECT_NAME)"; - SWIFT_PRECOMPILE_BRIDGING_HEADER = YES; - }; - name = Release; - }; - 67F5624523D6D48A0070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-iOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 67F5624623D6D48A0070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-iOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 67F5624823D6D48A0070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-iOSTests.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 67F5624923D6D48A0070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-iOSTests.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 67F5625523D6D4960070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-watchOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 6.1; - }; - name = Debug; - }; - 67F5625623D6D4960070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-watchOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = watchos; - SKIP_INSTALL = YES; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 4; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 6.1; - }; - name = Release; - }; - 67F5626E23D6D4A10070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-tvOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.2; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 67F5626F23D6D4A10070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-tvOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.2; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 67F5627123D6D4A10070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-tvTests.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = appletvos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.2; - }; - name = Debug; - }; - 67F5627223D6D4A10070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-tvTests.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = appletvos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.2; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 67F5628A23D6D4B00070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-macOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/Frameworks", - ); - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 67F5628B23D6D4B00070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = FBZ344S5M3; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Sources/Info-macOS.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/Frameworks", - ); - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - SDKROOT = macosx; - SKIP_INSTALL = YES; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 67F5628D23D6D4B00070E964 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-macOSTests.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/../Frameworks", - ); - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - 67F5628E23D6D4B00070E964 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = FBZ344S5M3; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = "Tests/Info-macOSTests.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/../Frameworks", - ); - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "fr.intechConsulting.$(PRODUCT_NAME)"; - PRODUCT_NAME = "$(PRODUCT_NAME)Tests"; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OBJC_BRIDGING_HEADER = "Tests/RetroObjectiveTests/RetroObjectiveTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 67F5622A23D6D4700070E964 /* Build configuration list for PBXProject "RetroObjective" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5622B23D6D4700070E964 /* Debug */, - 67F5622C23D6D4700070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5624423D6D48A0070E964 /* Build configuration list for PBXNativeTarget "RetroObjective iOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5624523D6D48A0070E964 /* Debug */, - 67F5624623D6D48A0070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5624723D6D48A0070E964 /* Build configuration list for PBXNativeTarget "RetroObjective iOSTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5624823D6D48A0070E964 /* Debug */, - 67F5624923D6D48A0070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5625423D6D4960070E964 /* Build configuration list for PBXNativeTarget "RetroObjective watchOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5625523D6D4960070E964 /* Debug */, - 67F5625623D6D4960070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5626D23D6D4A10070E964 /* Build configuration list for PBXNativeTarget "RetroObjective tvOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5626E23D6D4A10070E964 /* Debug */, - 67F5626F23D6D4A10070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5627023D6D4A10070E964 /* Build configuration list for PBXNativeTarget "RetroObjective tvOSTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5627123D6D4A10070E964 /* Debug */, - 67F5627223D6D4A10070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5628923D6D4B00070E964 /* Build configuration list for PBXNativeTarget "RetroObjective macOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5628A23D6D4B00070E964 /* Debug */, - 67F5628B23D6D4B00070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 67F5628C23D6D4B00070E964 /* Build configuration list for PBXNativeTarget "RetroObjective macOSTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 67F5628D23D6D4B00070E964 /* Debug */, - 67F5628E23D6D4B00070E964 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 67F5622723D6D4700070E964 /* Project object */; -} diff --git a/RetroObjective.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/RetroObjective.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 5e0409e..0000000 --- a/RetroObjective.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/RetroObjective.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/RetroObjective.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/RetroObjective.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/Sources/RetroObjective/Exports.swift b/Sources/RetroObjective/Exports.swift new file mode 100644 index 0000000..ec268ee --- /dev/null +++ b/Sources/RetroObjective/Exports.swift @@ -0,0 +1 @@ +@_exported import RetroObjectiveObjC diff --git a/Sources/RetroObjective/RetroObjectiveProxy.swift b/Sources/RetroObjective/RetroObjectiveProxy.swift index 94c8ff9..34524fc 100644 --- a/Sources/RetroObjective/RetroObjectiveProxy.swift +++ b/Sources/RetroObjective/RetroObjectiveProxy.swift @@ -7,7 +7,7 @@ import Foundation -protocol InitializerProtocol: class { +protocol InitializerProtocol: AnyObject { static var classSelectors: [NSValue: Set] { get set } func lock() diff --git a/Sources/RetroObjective/RetroObjectiveProxyType.swift b/Sources/RetroObjective/RetroObjectiveProxyType.swift index 8a2ddf8..3ec40a2 100644 --- a/Sources/RetroObjective/RetroObjectiveProxyType.swift +++ b/Sources/RetroObjective/RetroObjectiveProxyType.swift @@ -9,7 +9,7 @@ import Foundation private var associatedKey: UInt8 = 0 -public protocol RetroObjectiveProxyType: class { +public protocol RetroObjectiveProxyType: AnyObject { associatedtype Owner func resetRetroObjectiveProxyType(owner: Owner) diff --git a/Sources/RetroObjectiveCombine/RetroObjective+Combine.swift b/Sources/RetroObjectiveCombine/RetroObjective+Combine.swift new file mode 100644 index 0000000..c875fad --- /dev/null +++ b/Sources/RetroObjectiveCombine/RetroObjective+Combine.swift @@ -0,0 +1,66 @@ +import RetroObjective +#if canImport(Combine) +import Combine + +@available(iOS 13.0, *) +extension Publishers { + public typealias RetroObjectiveDelegate = RetroObjectiveProxy & RetroObjectiveProxyType + struct RetroObjective: Publisher { + public typealias Output = Arguments + public typealias Failure = Never + + private let delegate: Delegate + private let selector: Selector + + public init(delegate: Delegate, selector: Selector) { + self.delegate = delegate + self.selector = selector + } + + public func receive(subscriber: S) where S : Subscriber, Failure == S.Failure, Output == S.Input { + let subscription = SubscriptionRetroObjectiveProxy( + subscriber: subscriber, + delegate: delegate, + selector: selector) + subscriber.receive(subscription: subscription) + } + } +} + +@available(iOS 13.0, *) +extension Publishers.RetroObjective { + private final class SubscriptionRetroObjectiveProxy: Subscription where S.Input == Arguments { + private var subscriber: S? + weak private var delegate: Delegate? + let selector: Selector + + init(subscriber: S, delegate: Delegate, selector: Selector) { + self.subscriber = subscriber + self.delegate = delegate + self.selector = selector + bind() + } + + private func bind() { + self.delegate?.receive(selector: selector) {[weak self] arguments in + _ = self?.subscriber?.receive(arguments) + } + } + + func request(_ demand: Subscribers.Demand) { + } + + func cancel() { + subscriber = nil + } + } +} + +@available(iOS 13.0, *) +public extension Publishers { + static func proxyDelegate(_ delegate: Delegate, selector: Selector) -> AnyPublisher { + Publishers.RetroObjective(delegate: delegate, selector: selector).eraseToAnyPublisher() + } +} + +#endif diff --git a/Sources/RetroObjective/DelegateProxy.h b/Sources/RetroObjectiveObjC/DelegateProxy.h similarity index 100% rename from Sources/RetroObjective/DelegateProxy.h rename to Sources/RetroObjectiveObjC/DelegateProxy.h diff --git a/Sources/RetroObjective/DelegateProxy.m b/Sources/RetroObjectiveObjC/DelegateProxy.m similarity index 100% rename from Sources/RetroObjective/DelegateProxy.m rename to Sources/RetroObjectiveObjC/DelegateProxy.m diff --git a/Sources/RetroObjective/RORuntime.h b/Sources/RetroObjectiveObjC/RORuntime.h similarity index 100% rename from Sources/RetroObjective/RORuntime.h rename to Sources/RetroObjectiveObjC/RORuntime.h diff --git a/Sources/RetroObjective/RORuntime.m b/Sources/RetroObjectiveObjC/RORuntime.m similarity index 100% rename from Sources/RetroObjective/RORuntime.m rename to Sources/RetroObjectiveObjC/RORuntime.m diff --git a/Sources/RetroObjectiveObjC/RetroObjective.h b/Sources/RetroObjectiveObjC/RetroObjective.h new file mode 100644 index 0000000..219effc --- /dev/null +++ b/Sources/RetroObjectiveObjC/RetroObjective.h @@ -0,0 +1,12 @@ +// +// Header.h +// +// +// Created by Amine Bensalah on 11/02/2022. +// + +#ifndef Header_h +#define Header_h + + +#endif /* Header_h */ diff --git a/Sources/RetroObjective/RetroObjective.h b/Sources/RetroObjectiveObjC/RetroObjectiveObjC.h similarity index 100% rename from Sources/RetroObjective/RetroObjective.h rename to Sources/RetroObjectiveObjC/RetroObjectiveObjC.h diff --git a/Tests/RetroObjectiveCombineTests/RetroObjectiveCombineTests.swift b/Tests/RetroObjectiveCombineTests/RetroObjectiveCombineTests.swift new file mode 100644 index 0000000..e7244c1 --- /dev/null +++ b/Tests/RetroObjectiveCombineTests/RetroObjectiveCombineTests.swift @@ -0,0 +1,71 @@ +// +// RetroObjective_iOSTests.swift +// RetroObjective iOSTests +// +// Created by Amine Bensalah on 21/01/2020. +// + +import XCTest +import Combine +import RetroObjective +@testable import RetroObjectiveCombine + +class RetroObjectiveCombineTests: XCTestCase { + + var disposeBag = Set() + + override func setUp() { + // Put setup code here. This method is called before the invocation of each test method in the class. + } + + override func tearDown() { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testDelegatePublisher() { + var expectationValue: String? + let expectation = self.expectation(description: #function) + let delegateTester = DelegateTester() + delegateTester.combine + .value + .sink { (value) in + expectationValue = value + expectation.fulfill() + } + .store(in: &disposeBag) + + let stringTest = "send new element" + delegateTester.testDelegate(stringTest) + + waitForExpectations(timeout: 1.0) { error in + if let error = error { + XCTFail(error.localizedDescription) + } + XCTAssertEqual(expectationValue, stringTest) + } + } + + func testOtherDelegatePublisher() { + var expectationValue: String? + let expectation = self.expectation(description: #function) + let delegateTester = DelegateTester() + let proxyDelegateTester = TestDelegateProxy.proxy(for: delegateTester) + proxyDelegateTester + .value + .sink { (value) in + expectationValue = value + expectation.fulfill() + } + .store(in: &disposeBag) + + let stringTest = "send new element" + delegateTester.testDelegate(stringTest) + + waitForExpectations(timeout: 1.0) { error in + if let error = error { + XCTFail(error.localizedDescription) + } + XCTAssertEqual(expectationValue, stringTest) + } + } +} diff --git a/Tests/RetroObjectiveCombineTests/TestDelegate.swift b/Tests/RetroObjectiveCombineTests/TestDelegate.swift new file mode 100644 index 0000000..2da816b --- /dev/null +++ b/Tests/RetroObjectiveCombineTests/TestDelegate.swift @@ -0,0 +1,78 @@ +// +// File.swift +// RetroObjectiveCombineTests +// +// Created by Amine Bensalah on 20/06/2020. +// + +import Foundation +import RetroObjectiveObjC +import RetroObjective +import Combine +import RetroObjectiveCombine + +@objc protocol TestDelegate: NSObjectProtocol { + @objc optional func mockData(_ give: String) +} + +class DelegateTester: NSObject { + weak var delegate: TestDelegate? + + func testDelegate(_ give: String) { + self.delegate?.mockData?(give) + } +} + +final class TestDelegateProxy: RetroObjectiveProxy, TestDelegate, RetroObjectiveProxyType { + public func resetRetroObjectiveProxyType(owner: DelegateTester) { + owner.delegate = self + } + + var value: AnyPublisher { + Publishers.proxyDelegate(self, selector: #selector(TestDelegate.mockData(_:))) + .compactMap { $0.value(at: 0) as? String } + .eraseToAnyPublisher() + } +} + +final class DelegateImplementedProxy: RetroObjectiveProxy, TestDelegate { + private(set) var receivedValues = [Int]() + + func intEvent(_ value: Int) { + receivedValues.append(value) + } +} + +public struct CombineExtension { + public let base: Base + + init(_ base: Base) { + self.base = base + } +} + +public protocol CombineCompatible {} + +extension CombineCompatible { + public static var combine: CombineExtension.Type { + return CombineExtension.self + } + + public var combine: CombineExtension { + return CombineExtension(self) + } +} + +extension NSObject: CombineCompatible {} + +extension CombineExtension where Base: DelegateTester { + var delegateProxy: TestDelegateProxy { + .proxy(for: base) + } + + var value: AnyPublisher { + Publishers.proxyDelegate(delegateProxy, selector: #selector(TestDelegate.mockData(_:))) + .compactMap { $0.value(at: 0) as? String } + .eraseToAnyPublisher() + } +} diff --git a/Tests/RetroObjectiveTests/RetroObjectiveTests.swift b/Tests/RetroObjectiveTests/RetroObjectiveTests.swift index 20f4712..fed6cac 100644 --- a/Tests/RetroObjectiveTests/RetroObjectiveTests.swift +++ b/Tests/RetroObjectiveTests/RetroObjectiveTests.swift @@ -6,9 +6,9 @@ // import XCTest -@testable import RetroObjective_iOS +@testable import RetroObjective -class RetroObjective_iOSTests: XCTestCase { +class RetroObjectiveTests: XCTestCase { override func setUp() { // Put setup code here. This method is called before the invocation of each test method in the class.