Embed frameworks using a bash script (#610)

* Delete embed logic

* Add methods to read the dsym path & bcsymbolmap paths from a framework

* Place the tests in the right test case

* Implement EmbedScriptGenerator

* Test EmbedScriptGenerator

* Extract methods that interact with the system into metadata provider utilities and fix tests

* Include output paths

* Test FrameworkMetadataProvider

* Test PrecompiledMetadataProvider

* Add more tests

* Create fixture project

* Add acceptance test

* Address comments

* Use Xcode 11.1

* Update Package.resolved

* Update XcodeProj

* Make the tuistenv install test more resilient
This commit is contained in:
Pedro Piñera Buendía 2019-10-29 13:34:02 +01:00 committed by GitHub
parent 6de20546d9
commit 8ea0956e1d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
100 changed files with 22428 additions and 1061 deletions

View File

@ -42,7 +42,7 @@ workflows:
jobs:
tuist-install:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
steps:
- checkout
- multirepo/run-job-for-paths:
@ -58,7 +58,7 @@ jobs:
./script/uninstall
tuist-release-build:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
# To activate chruby, we must change the shell parameter of your job to be a login shell (adding --login).
shell: /bin/bash --login -eo pipefail
steps:
@ -72,7 +72,7 @@ jobs:
swift build -c release --product tuistenv
danger:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
# To activate chruby, we must change the shell parameter of your job to be a login shell (adding --login).
shell: /bin/bash --login -eo pipefail
steps:
@ -94,7 +94,7 @@ jobs:
- 'vendor'
tuist-acceptance-tests:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
# To activate chruby, we must change the shell parameter of your job to be a login shell (adding --login).
shell: /bin/bash --login -eo pipefail
steps:
@ -116,7 +116,7 @@ jobs:
- 'vendor'
tuist-upload:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
# To activate chruby, we must change the shell parameter of your job to be a login shell (adding --login).
shell: /bin/bash --login -eo pipefail
steps:
@ -137,7 +137,7 @@ jobs:
- 'vendor'
tuist-unit-tests:
macos:
xcode: '11.0.0'
xcode: '11.1.0'
# To activate chruby, we must change the shell parameter of your job to be a login shell (adding --login).
shell: /bin/bash --login -eo pipefail
steps:

6
.gitignore vendored
View File

@ -34,7 +34,6 @@ Temporary Items
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
## Build generated
build/
DerivedData/
## Various settings
@ -90,14 +89,13 @@ fastlane/test_output
.byebug_history
*.xcarchive
tmp/
build/
/build/
.env
.idea/
Carthage/Checkouts
/Carthage/Checkouts
*.profraw
tuist.zip
build/
TODO
TODO.md
mkmf.log

View File

@ -19,15 +19,6 @@
"version": "1.0.0"
}
},
{
"package": "Shell",
"repositoryURL": "https://github.com/tuist/Shell",
"state": {
"branch": null,
"revision": "d38121f89401db902b0d0bfc30b987e2c84c254e",
"version": "2.0.3"
}
},
{
"package": "Spectre",
"repositoryURL": "https://github.com/kylef/Spectre.git",
@ -42,7 +33,7 @@
"repositoryURL": "https://github.com/apple/swift-llbuild.git",
"state": {
"branch": "master",
"revision": "78d344a48f05fa91cf2734a5164174154d3dd680",
"revision": "0a778ca0c51025ffec95de881e59eb35c92f9944",
"version": null
}
},
@ -60,7 +51,7 @@
"repositoryURL": "https://github.com/tuist/XcodeProj",
"state": {
"branch": "master",
"revision": "bfb8291e5eb2745e0bacb7c5b2f649fefa36853d",
"revision": "4b285748321bd4bbdb0ae274dd9a22d454ef1a69",
"version": null
}
}

View File

@ -86,6 +86,10 @@ let package = Package(
name: "TuistGeneratorTests",
dependencies: ["TuistGenerator", "TuistCoreTesting"]
),
.testTarget(
name: "TuistGeneratorIntegrationTests",
dependencies: ["TuistGenerator", "TuistCoreTesting"]
),
.testTarget(
name: "TuistIntegrationTests",
dependencies: ["TuistGenerator", "TuistCoreTesting"]

View File

@ -0,0 +1,9 @@
import Foundation
public struct TestError: Error, CustomStringConvertible {
public var description: String
public init(_ description: String) {
self.description = description
}
}

View File

@ -57,11 +57,16 @@ final class LinkGenerator: LinkGenerating {
/// An instance to locate tuist binaries.
let binaryLocator: BinaryLocating
/// Utility that generates the script to embed dynamic frameworks.
let embedScriptGenerator: EmbedScriptGenerating
/// Initializes the link generator with its attributes.
///
/// - Parameter binaryLocator: An instance to locate tuist binaries.
init(binaryLocator: BinaryLocating = BinaryLocator()) {
/// - Parameter embedScriptGenerator: Utility that generates the script to embed dynamic frameworks.
init(binaryLocator: BinaryLocating = BinaryLocator(),
embedScriptGenerator: EmbedScriptGenerating = EmbedScriptGenerator()) {
self.binaryLocator = binaryLocator
self.embedScriptGenerator = embedScriptGenerator
}
// MARK: - LinkGenerating
@ -170,16 +175,11 @@ final class LinkGenerator: LinkGenerating {
pbxTarget.buildPhases.append(precompiledEmbedPhase)
pbxTarget.buildPhases.append(embedPhase)
var script: [String] = []
var precompiledFrameworkPaths: [AbsolutePath] = []
try dependencies.forEach { dependency in
if case let DependencyReference.absolute(path) = dependency {
let relativePath = "$(SRCROOT)/\(path.relative(to: sourceRootPath).pathString)"
let binary = binaryLocator.copyFrameworksBinary()
script.append("\(binary) embed \(path.relative(to: sourceRootPath).pathString)")
precompiledEmbedPhase.inputPaths.append(relativePath)
precompiledEmbedPhase.outputPaths.append("$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/\(path.components.last!)")
precompiledFrameworkPaths.append(path)
} else if case let DependencyReference.product(target, _) = dependency {
guard let fileRef = fileElements.product(target: target) else {
throw LinkGeneratorError.missingProduct(name: target)
@ -189,10 +189,14 @@ final class LinkGenerator: LinkGenerating {
embedPhase.files?.append(buildFile)
}
}
if script.isEmpty {
if precompiledFrameworkPaths.isEmpty {
precompiledEmbedPhase.shellScript = "echo \"Skipping, nothing to be embedded.\""
} else {
precompiledEmbedPhase.shellScript = script.joined(separator: "\n")
let script = try embedScriptGenerator.script(sourceRootPath: sourceRootPath, frameworkPaths: precompiledFrameworkPaths)
precompiledEmbedPhase.shellScript = script.script
precompiledEmbedPhase.inputPaths = script.inputPaths.map(\.pathString)
precompiledEmbedPhase.outputPaths = script.outputPaths
}
}

View File

@ -17,32 +17,27 @@ class FrameworkNode: PrecompiledNode {
return path.pathString.contains("Carthage/Build")
}
/// Return the framework's binary path.
override var binaryPath: AbsolutePath {
let frameworkName = path.components.last!.replacingOccurrences(of: ".framework", with: "")
return path.appending(component: frameworkName)
}
/// Returns the library product.
///
/// - Returns: Product.
/// - Throws: An error if the static/dynamic nature of the library cannot be obtained.
func product() throws -> Product {
switch try linking() {
case .dynamic:
return .framework
case .static:
return .staticFramework
}
return FrameworkNode.binaryPath(frameworkPath: path)
}
override func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
let metadataProvider = FrameworkMetadataProvider()
try container.encode(path.pathString, forKey: .path)
try container.encode(name, forKey: .name)
try container.encode(product(), forKey: .product)
let archs = try architectures()
try container.encode(try metadataProvider.product(framework: self), forKey: .product)
let archs = try metadataProvider.architectures(precompiled: self)
try container.encode(archs.map(\.rawValue), forKey: .architectures)
try container.encode("precompiled", forKey: .type)
}
/// Given a framework path it returns the path to its binary.
/// - Parameter frameworkPath: Framework path.
static func binaryPath(frameworkPath: AbsolutePath) -> AbsolutePath {
let frameworkName = frameworkPath.basename.replacingOccurrences(of: ".framework", with: "")
return frameworkPath.appending(component: frameworkName)
}
}

View File

@ -403,9 +403,9 @@ extension Graph {
return targetNode.target.product == .framework
}
internal func frameworkUsesDynamicLinking() -> (_ frameworkNode: PrecompiledNode) -> Bool {
internal func frameworkUsesDynamicLinking(frameworkMetadataProvider: FrameworkMetadataProviding = FrameworkMetadataProvider()) -> (_ frameworkNode: PrecompiledNode) -> Bool {
return { frameworkNode in
let isDynamicLink = try? frameworkNode.linking() == .dynamic
let isDynamicLink = try? frameworkMetadataProvider.linking(precompiled: frameworkNode) == .dynamic
return isDynamicLink ?? false
}
}

View File

@ -69,25 +69,14 @@ class LibraryNode: PrecompiledNode {
return path
}
/// Returns the framework product.
///
/// - Returns: Product.
/// - Throws: An error if the static/dynamic nature of the framework cannot be obtained.
func product() throws -> Product {
switch try linking() {
case .dynamic:
return .dynamicLibrary
case .static:
return .staticLibrary
}
}
override func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
let metadataProvider = LibraryMetadataProvider()
try container.encode(path.pathString, forKey: .path)
try container.encode(name, forKey: .name)
try container.encode(product(), forKey: .product)
let archs = try architectures()
try container.encode(try metadataProvider.product(library: self), forKey: .product)
let archs = try metadataProvider.architectures(precompiled: self)
try container.encode(archs.map(\.rawValue), forKey: .architectures)
try container.encode("precompiled", forKey: .type)
}

View File

@ -2,48 +2,7 @@ import Basic
import Foundation
import TuistCore
enum PrecompiledNodeError: FatalError, Equatable {
case architecturesNotFound(AbsolutePath)
// MARK: - FatalError
var description: String {
switch self {
case let .architecturesNotFound(path):
return "Couldn't find architectures for binary at path \(path.pathString)"
}
}
var type: ErrorType {
switch self {
case .architecturesNotFound:
return .abort
}
}
// MARK: - Equatable
static func == (lhs: PrecompiledNodeError, rhs: PrecompiledNodeError) -> Bool {
switch (lhs, rhs) {
case let (.architecturesNotFound(lhsPath), .architecturesNotFound(rhsPath)):
return lhsPath == rhsPath
}
}
}
class PrecompiledNode: GraphNode {
enum Linking: String {
case `static`, dynamic
}
enum Architecture: String {
case x8664 = "x86_64"
case i386
case armv7
case armv7s
case arm64
}
init(path: AbsolutePath) {
/// Returns the name of the precompiled node removing the extension
/// Alamofire.framework -> Alamofire
@ -56,32 +15,6 @@ class PrecompiledNode: GraphNode {
fatalError("This method should be overriden by the subclasses")
}
func architectures() throws -> [Architecture] {
let result = try System.shared.capture("/usr/bin/lipo", "-info", binaryPath.pathString).spm_chuzzle() ?? ""
let regexes = [
// Non-fat file: path is architecture: x86_64
try NSRegularExpression(pattern: ".+:\\s.+\\sis\\sarchitecture:\\s(.+)", options: []),
// Architectures in the fat file: /path/xpm.framework/xpm are: x86_64 arm64
try NSRegularExpression(pattern: "Architectures\\sin\\sthe\\sfat\\sfile:.+:\\s(.+)", options: []),
]
guard let architectures = regexes.compactMap({ (regex) -> [Architecture]? in
guard let match = regex.firstMatch(in: result, options: [], range: NSRange(location: 0, length: result.count)) else {
return nil
}
let architecturesString = (result as NSString).substring(with: match.range(at: 1))
return architecturesString.split(separator: " ").map(String.init).compactMap(Architecture.init)
}).first else {
throw PrecompiledNodeError.architecturesNotFound(binaryPath)
}
return architectures
}
func linking() throws -> Linking {
let result = try System.shared.capture("/usr/bin/file", binaryPath.pathString).spm_chuzzle() ?? ""
return result.contains("dynamically linked") ? .dynamic : .static
}
enum CodingKeys: String, CodingKey {
case path
case name

View File

@ -0,0 +1,225 @@
import Basic
import Foundation
/// This protocols defines the interface of an utility that given a list of embeddable frameworks
/// returns a bash script that can be executed in a script build phase to copy the frameworks to
/// the right directory in the output product and strip the architectures that are not necessary.
/// The script has been ported from CocoaPods' implementation:
/// https://github.com/CocoaPods/CocoaPods/blob/8bae6827682e71221b44227730163dcd3076c529/lib/cocoapods/generator/embed_frameworks_script.rb
protocol EmbedScriptGenerating {
/// It returns the script and the input paths list that should be used to generate a Xcode script phase
/// to embed the given frameworks into the compiled product.
/// - Parameter sourceRootPath: Directory where the Xcode project will be created.
/// - Parameter frameworkPaths: Path to the frameworks.
func script(sourceRootPath: AbsolutePath, frameworkPaths: [AbsolutePath]) throws -> EmbedScript
}
/// It represents a embed frameworks script.
struct EmbedScript {
/// Script
let script: String
/// Input paths.
let inputPaths: [RelativePath]
/// Output paths.
let outputPaths: [String]
}
final class EmbedScriptGenerator: EmbedScriptGenerating {
let frameworkMetadataProvider: FrameworkMetadataProviding
init(frameworkMetadataProvider: FrameworkMetadataProviding = FrameworkMetadataProvider()) {
self.frameworkMetadataProvider = frameworkMetadataProvider
}
func script(sourceRootPath: AbsolutePath, frameworkPaths: [AbsolutePath]) throws -> EmbedScript {
var script = baseScript()
script.append("\n")
let (frameworksScript, inputPaths, outputPaths) = try self.frameworksScript(sourceRootPath: sourceRootPath, frameworkPaths: frameworkPaths)
script.append(frameworksScript)
return EmbedScript(script: script, inputPaths: inputPaths, outputPaths: outputPaths)
}
// MARK: - Fileprivate
fileprivate func frameworksScript(sourceRootPath: AbsolutePath,
frameworkPaths: [AbsolutePath]) throws -> (script: String, inputPaths: [RelativePath], outputPaths: [String]) {
var script = ""
var inputPaths: [RelativePath] = []
var outputPaths: [String] = []
for frameworkPath in frameworkPaths {
// Framework
let relativeFrameworkPath = frameworkPath.relative(to: sourceRootPath)
script.append("install_framework \"\(relativeFrameworkPath.pathString)\"\n")
inputPaths.append(relativeFrameworkPath)
outputPaths.append("${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/\(relativeFrameworkPath.basename)")
// .dSYM
if let dsymPath = frameworkMetadataProvider.dsymPath(frameworkPath: frameworkPath) {
let relativeDsymPath = dsymPath.relative(to: sourceRootPath)
script.append("install_dsym \"\(relativeDsymPath.pathString)\"\n")
inputPaths.append(relativeDsymPath)
outputPaths.append("${DWARF_DSYM_FOLDER_PATH}/\(dsymPath.basename)")
}
// .bcsymbolmap
let bcsymbolmaps = try frameworkMetadataProvider.bcsymbolmapPaths(frameworkPath: frameworkPath)
for bcsymbolmapPath in bcsymbolmaps {
let relativeDsymPath = bcsymbolmapPath.relative(to: sourceRootPath)
script.append("install_bcsymbolmap \"\(relativeDsymPath.pathString)\"\n")
inputPaths.append(relativeDsymPath)
outputPaths.append("${BUILT_PRODUCTS_DIR}/\(relativeDsymPath.basename)")
}
}
return (script: script, inputPaths: inputPaths, outputPaths: outputPaths)
}
fileprivate func baseScript() -> String {
return """
#!/bin/sh
set -e
set -u
set -o pipefail
function on_error {
echo "$(realpath -mq "${0}"):$1: error: Unexpected failure"
}
trap 'on_error $LINENO' ERR
if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then
# If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy
# frameworks to, so exit 0 (signalling the script phase was successful).
exit 0
fi
echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
# Used as a return value for each invocation of `strip_invalid_archs` function.
STRIP_BINARY_RETVAL=0
# This protects against multiple targets copying the same framework dependency at the same time. The solution
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
# Copies and strips a vendored framework
install_framework()
{
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
local source="${BUILT_PRODUCTS_DIR}/$1"
elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then
local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")"
elif [ -r "$1" ]; then
local source="$1"
fi
local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
if [ -L "${source}" ]; then
echo "Symlinked..."
source="$(readlink "${source}")"
fi
# Use filter instead of exclude so missing patterns don't throw errors.
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${source}\\" \\"${destination}\\""
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
local basename
basename="$(basename -s .framework "$1")"
binary="${destination}/${basename}.framework/${basename}"
if ! [ -r "$binary" ]; then
binary="${destination}/${basename}"
elif [ -L "${binary}" ]; then
echo "Destination binary is symlinked..."
dirname="$(dirname "${binary}")"
binary="${dirname}/$(readlink "${binary}")"
fi
# Strip invalid architectures so "fat" simulator / device frameworks work on device
if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then
strip_invalid_archs "$binary"
fi
# Resign the code if required by the build settings to avoid unstable apps
code_sign_if_enabled "${destination}/$(basename "$1")"
}
# Copies and strips a vendored dSYM
install_dsym() {
local source="$1"
if [ -r "$source" ]; then
# Copy the dSYM into a the targets temp dir.
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${source}\\" \\"${DERIVED_FILES_DIR}\\""
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
local basename
basename="$(basename -s .framework.dSYM "$source")"
binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}"
# Strip invalid architectures so "fat" simulator / device frameworks work on device
if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then
strip_invalid_archs "$binary"
fi
if [[ $STRIP_BINARY_RETVAL == 1 ]]; then
# Move the stripped file into its final destination.
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\\" \\"${DWARF_DSYM_FOLDER_PATH}\\""
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
else
# The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM"
fi
fi
}
# Copies the bcsymbolmap files of a vendored framework
install_bcsymbolmap() {
local bcsymbolmap_path="$1"
local destination="${BUILT_PRODUCTS_DIR}"
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${bcsymbolmap_path}\" \"${destination}\""
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"
}
# Signs a framework with the provided identity
code_sign_if_enabled() {
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
# Use the current code_sign_identity
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'"
code_sign_cmd="$code_sign_cmd &"
echo "$code_sign_cmd"
eval "$code_sign_cmd"
fi
}
# Strip invalid architectures
strip_invalid_archs() {
binary="$1"
# Get architectures for current target binary
binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
# Intersect them with the architectures we are building for
intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\\n' | sort | uniq -d)"
# If there are no archs supported by this binary then warn the user
if [[ -z "$intersected_archs" ]]; then
echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
STRIP_BINARY_RETVAL=0
return
fi
stripped=""
for arch in $binary_archs; do
if ! [[ "${ARCHS}" == *"$arch"* ]]; then
# Strip non-valid architectures in-place
lipo -remove "$arch" -output "$binary" "$binary"
stripped="$stripped $arch"
fi
done
if [[ "$stripped" ]]; then
echo "Stripped $binary of architectures:$stripped"
fi
STRIP_BINARY_RETVAL=1
}
"""
}
}

View File

@ -0,0 +1,28 @@
import Basic
import Foundation
import TuistCore
protocol LibraryMetadataProviding: PrecompiledMetadataProviding {
/// Returns the product for the library at the given path.
/// - Parameter libraryPath: Path to the library.
func product(libraryPath: AbsolutePath) throws -> Product
/// Returns the product for the given library.
/// - Parameter library: Library instance.
func product(library: LibraryNode) throws -> Product
}
final class LibraryMetadataProvider: PrecompiledMetadataProvider, LibraryMetadataProviding {
func product(libraryPath: AbsolutePath) throws -> Product {
switch try linking(binaryPath: libraryPath) {
case .dynamic:
return .dynamicLibrary
case .static:
return .staticLibrary
}
}
func product(library: LibraryNode) throws -> Product {
return try product(libraryPath: library.path)
}
}

View File

@ -0,0 +1,71 @@
import Basic
import Foundation
import TuistCore
protocol FrameworkMetadataProviding: PrecompiledMetadataProviding {
/// Given the path to a framework, it returns the path to its dSYMs if they exist
/// in the same framework directory.
/// - Parameter frameworkPath: Path to the .framework directory.
func dsymPath(frameworkPath: AbsolutePath) -> AbsolutePath?
/// Given a framework, it returns the path to its dSYMs if they exist
/// in the same framework directory.
/// - Parameter framework: Framework instance.
func dsymPath(framework: FrameworkNode) -> AbsolutePath?
/// Given the path to a framework, it returns the list of .bcsymbolmap files that
/// are associated to the framework and that are present in the same directory.
/// - Parameter frameworkPath: Path to the .framework directory.
func bcsymbolmapPaths(frameworkPath: AbsolutePath) throws -> [AbsolutePath]
/// Given a framework, it returns the list of .bcsymbolmap files that
/// are associated to the framework and that are present in the same directory.
/// - Parameter framework: Framework instance.
func bcsymbolmapPaths(framework: FrameworkNode) throws -> [AbsolutePath]
/// Returns the product for the framework at the given path.
/// - Parameter frameworkPath: Path to the .framework directory.
func product(frameworkPath: AbsolutePath) throws -> Product
/// Returns the product for the given framework.
/// - Parameter framework: Framework instance.
func product(framework: FrameworkNode) throws -> Product
}
final class FrameworkMetadataProvider: PrecompiledMetadataProvider, FrameworkMetadataProviding {
func dsymPath(frameworkPath: AbsolutePath) -> AbsolutePath? {
let path = AbsolutePath("\(frameworkPath.pathString).dSYM")
if FileHandler.shared.exists(path) { return path }
return nil
}
func dsymPath(framework: FrameworkNode) -> AbsolutePath? {
return dsymPath(frameworkPath: framework.path)
}
func bcsymbolmapPaths(frameworkPath: AbsolutePath) throws -> [AbsolutePath] {
let binaryPath = FrameworkNode.binaryPath(frameworkPath: frameworkPath)
let uuids = try self.uuids(binaryPath: binaryPath)
return uuids
.map { frameworkPath.parentDirectory.appending(component: "\($0).bcsymbolmap") }
.filter { FileHandler.shared.exists($0) }
}
func bcsymbolmapPaths(framework: FrameworkNode) throws -> [AbsolutePath] {
return try bcsymbolmapPaths(frameworkPath: framework.path)
}
func product(frameworkPath: AbsolutePath) throws -> Product {
let binaryPath = FrameworkNode.binaryPath(frameworkPath: frameworkPath)
switch try linking(binaryPath: binaryPath) {
case .dynamic:
return .framework
case .static:
return .staticFramework
}
}
func product(framework: FrameworkNode) throws -> Product {
return try product(frameworkPath: framework.path)
}
}

View File

@ -0,0 +1,144 @@
import Basic
import Foundation
import TuistCore
enum BinaryArchitecture: String {
case x8664 = "x86_64"
case i386
case armv7
case armv7s
case arm64
}
enum BinaryLinking: String {
case `static`, dynamic
}
enum PrecompiledMetadataProviderError: FatalError, Equatable {
case architecturesNotFound(AbsolutePath)
// MARK: - FatalError
var description: String {
switch self {
case let .architecturesNotFound(path):
return "Couldn't find architectures for binary at path \(path.pathString)"
}
}
var type: ErrorType {
switch self {
case .architecturesNotFound:
return .abort
}
}
// MARK: - Equatable
static func == (lhs: PrecompiledMetadataProviderError, rhs: PrecompiledMetadataProviderError) -> Bool {
switch (lhs, rhs) {
case let (.architecturesNotFound(lhsPath), .architecturesNotFound(rhsPath)):
return lhsPath == rhsPath
}
}
}
protocol PrecompiledMetadataProviding {
/// It returns the supported architectures of the binary at the given path.
/// - Parameter binaryPath: Binary path.
func architectures(binaryPath: AbsolutePath) throws -> [BinaryArchitecture]
/// It returns the supported architectures of the precompiled framework or library.
/// - Parameter precompiled: Precompiled framework or library.
func architectures(precompiled: PrecompiledNode) throws -> [BinaryArchitecture]
/// Return how other binaries should link the binary at the given path.
/// - Parameter binaryPath: Path to the binary.
func linking(binaryPath: AbsolutePath) throws -> BinaryLinking
/// Return how other binaries should link the given precompiled framework or library.
/// - Parameter precompiled: Precompiled framework or library.
func linking(precompiled: PrecompiledNode) throws -> BinaryLinking
/// It uses 'dwarfdump' to dump the UUIDs of each architecture.
/// The UUIDs allows us to know which .bcsymbolmap files belong to this binary.
/// - Parameter binaryPath: Path to the binary.
func uuids(binaryPath: AbsolutePath) throws -> Set<UUID>
/// It uses 'dwarfdump' to dump the UUIDs of each architecture.
/// The UUIDs allows us to know which .bcsymbolmap files belong to this binary.
/// - Parameter precompiled: Precompiled framework or library.
func uuids(precompiled: PrecompiledNode) throws -> Set<UUID>
}
class PrecompiledMetadataProvider: PrecompiledMetadataProviding {
func architectures(precompiled: PrecompiledNode) throws -> [BinaryArchitecture] {
return try architectures(binaryPath: precompiled.binaryPath)
}
func architectures(binaryPath: AbsolutePath) throws -> [BinaryArchitecture] {
let result = try System.shared.capture("/usr/bin/lipo", "-info", binaryPath.pathString).spm_chuzzle() ?? ""
let regexes = [
// Non-fat file: path is architecture: x86_64
try NSRegularExpression(pattern: ".+:\\s.+\\sis\\sarchitecture:\\s(.+)", options: []),
// Architectures in the fat file: /path/xpm.framework/xpm are: x86_64 arm64
try NSRegularExpression(pattern: "Architectures\\sin\\sthe\\sfat\\sfile:.+:\\s(.+)", options: []),
]
guard let architectures = regexes.compactMap({ (regex) -> [BinaryArchitecture]? in
guard let match = regex.firstMatch(in: result, options: [], range: NSRange(location: 0, length: result.count)) else {
return nil
}
let architecturesString = (result as NSString).substring(with: match.range(at: 1))
return architecturesString.split(separator: " ").map(String.init).compactMap(BinaryArchitecture.init)
}).first else {
throw PrecompiledMetadataProviderError.architecturesNotFound(binaryPath)
}
return architectures
}
func linking(precompiled: PrecompiledNode) throws -> BinaryLinking {
return try linking(binaryPath: precompiled.binaryPath)
}
func linking(binaryPath: AbsolutePath) throws -> BinaryLinking {
let result = try System.shared.capture("/usr/bin/file", binaryPath.pathString).spm_chuzzle() ?? ""
return result.contains("dynamically linked") ? .dynamic : .static
}
func uuids(precompiled: PrecompiledNode) throws -> Set<UUID> {
return try uuids(binaryPath: precompiled.binaryPath)
}
func uuids(binaryPath: AbsolutePath) throws -> Set<UUID> {
let output = try System.shared.capture(["/usr/bin/xcrun", "dwarfdump", "--uuid", binaryPath.pathString])
// UUIDs are letters, decimals, or hyphens.
var uuidCharacterSet = CharacterSet()
uuidCharacterSet.formUnion(.letters)
uuidCharacterSet.formUnion(.decimalDigits)
uuidCharacterSet.formUnion(CharacterSet(charactersIn: "-"))
let scanner = Scanner(string: output)
var uuids = Set<UUID>()
// The output of dwarfdump is a series of lines formatted as follows
// for each architecture:
//
// UUID: <UUID> (<Architecture>) <PathToBinary>
//
while !scanner.isAtEnd {
scanner.scanString("UUID: ", into: nil)
var uuidString: NSString?
scanner.scanCharacters(from: uuidCharacterSet, into: &uuidString)
if let uuidString = uuidString as String?, let uuid = UUID(uuidString: uuidString) {
uuids.insert(uuid)
}
// Scan until a newline or end of file.
scanner.scanUpToCharacters(from: .newlines, into: nil)
}
return uuids
}
}

View File

@ -26,7 +26,6 @@ public final class CommandRegistry {
register(command: FocusCommand.self)
register(command: UpCommand.self)
register(command: GraphCommand.self)
register(hiddenCommand: EmbedCommand.self)
register(rawCommand: BuildCommand.self)
}

View File

@ -1,56 +0,0 @@
import Basic
import Foundation
import SPMUtility
import TuistCore
enum EmbedCommandError: FatalError {
case missingFrameworkPath
var type: ErrorType {
switch self {
case .missingFrameworkPath:
return .bug
}
}
var description: String {
switch self {
case .missingFrameworkPath:
return "The path to the framework is missing."
}
}
}
final class EmbedCommand: HiddenCommand {
// MARK: - HiddenCommand
static var command: String = "embed"
// MARK: - Attributes
private let embedder: FrameworkEmbedding
private let parser: ArgumentParser
// MARK: - Init
convenience init() {
self.init(embedder: FrameworkEmbedder(),
parser: ArgumentParser(usage: "embed", overview: ""))
}
init(embedder: FrameworkEmbedding,
parser: ArgumentParser) {
self.embedder = embedder
self.parser = parser
}
func run(arguments: [String]) throws {
guard let pathString = arguments.first else {
throw EmbedCommandError.missingFrameworkPath
}
let path = RelativePath(pathString)
Printer.shared.print("Embedding framework \(path.pathString)")
try embedder.embed(path: path)
Printer.shared.print(success: "Framework embedded")
}
}

View File

@ -1,247 +0,0 @@
import Basic
import Foundation
import TuistCore
// MARK: - Type
enum EmbeddableType: String {
case framework = "FMWK"
case bundle = "BNDL"
case dSYM
}
enum EmbeddableError: FatalError, Equatable {
case missingBundleExecutable(AbsolutePath)
case unstrippableNonFatEmbeddable(AbsolutePath)
var type: ErrorType {
switch self {
case .missingBundleExecutable: return .abort
case .unstrippableNonFatEmbeddable: return .abort
}
}
var description: String {
switch self {
case let .missingBundleExecutable(path):
return "Couldn't find executable in bundle at path \(path.pathString)"
case let .unstrippableNonFatEmbeddable(path):
return "Can't strip architectures from the non-fat package at path \(path.pathString)"
}
}
static func == (lhs: EmbeddableError, rhs: EmbeddableError) -> Bool {
switch (lhs, rhs) {
case let (.missingBundleExecutable(lhsPath), .missingBundleExecutable(rhsPath)):
return lhsPath == rhsPath
case let (.unstrippableNonFatEmbeddable(lhsPath), .unstrippableNonFatEmbeddable(rhsPath)):
return lhsPath == rhsPath
default:
return false
}
}
}
final class Embeddable {
enum Constants {
static let lipoArchitecturesMessage: String = "Architectures in the fat file:"
static let lipoNonFatFileMessage: String = "Non-fat file:"
}
// MARK: - Attributes
let path: AbsolutePath
// MARK: - Init
init(path: AbsolutePath) {
self.path = path
}
// MARK: - Package Information
func binaryPath() throws -> AbsolutePath? {
guard let bundle = Bundle(path: path.pathString) else { return nil }
guard let packageType = packageType() else { return nil }
switch packageType {
case .framework, .bundle:
guard let bundleExecutable = bundle.object(forInfoDictionaryKey: "CFBundleExecutable") as? String else {
throw EmbeddableError.missingBundleExecutable(path)
}
return path.appending(RelativePath(bundleExecutable))
case .dSYM:
let binaryName = URL(fileURLWithPath: path.pathString)
.deletingPathExtension()
.deletingPathExtension()
.lastPathComponent
if !binaryName.isEmpty {
return path.appending(RelativePath("Contents/Resources/DWARF/\(binaryName)"))
}
}
return nil
}
func packageType() -> EmbeddableType? {
guard let bundle = Bundle(path: path.pathString) else { return nil }
guard let bundlePackageType = bundle.object(forInfoDictionaryKey: "CFBundlePackageType") as? String else {
return nil
}
return EmbeddableType(rawValue: bundlePackageType)
}
func architectures() throws -> [String] {
guard let binPath = try binaryPath() else { return [] }
let lipoResult = try System.shared.capture("/usr/bin/lipo", "-info", binPath.pathString).spm_chuzzle() ?? ""
var characterSet = CharacterSet.alphanumerics
characterSet.insert(charactersIn: " _-")
let scanner = Scanner(string: lipoResult)
if scanner.scanString(Constants.lipoArchitecturesMessage, into: nil) {
// The output of "lipo -info PathToBinary" for fat files
// looks roughly like so:
//
// Architectures in the fat file: PathToBinary are: armv7 arm64
//
var architectures: NSString?
scanner.scanString(binPath.pathString, into: nil)
scanner.scanString("are:", into: nil)
scanner.scanCharacters(from: characterSet, into: &architectures)
let components = architectures?
.components(separatedBy: " ")
.filter { !$0.isEmpty }
if let components = components {
return components
}
}
if scanner.scanString(Constants.lipoNonFatFileMessage, into: nil) {
// The output of "lipo -info PathToBinary" for thin
// files looks roughly like so:
//
// Non-fat file: PathToBinary is architecture: x86_64
//
var architecture: NSString?
scanner.scanString(binPath.pathString, into: nil)
scanner.scanString("is architecture:", into: nil)
scanner.scanCharacters(from: characterSet, into: &architecture)
if let architecture = architecture {
return [architecture as String]
}
}
return []
}
// MARK: - Strip
func strip(keepingArchitectures: [String]) throws {
if try architectures().count == 1 {
throw EmbeddableError.unstrippableNonFatEmbeddable(path)
}
switch packageType() {
case .framework?, .bundle?:
try stripFramework(keepingArchitectures: keepingArchitectures)
case .dSYM?:
try stripDSYM(keepingArchitectures: keepingArchitectures)
default:
return
}
}
private func stripFramework(keepingArchitectures: [String]) throws {
try stripArchitectures(keepingArchitectures: keepingArchitectures)
try stripHeaders(frameworkPath: path)
try stripPrivateHeaders(frameworkPath: path)
try stripModulesDirectory(frameworkPath: path)
}
private func stripDSYM(keepingArchitectures: [String]) throws {
try stripArchitectures(keepingArchitectures: keepingArchitectures)
}
private func stripArchitectures(keepingArchitectures: [String]) throws {
let architecturesInPackage = try architectures()
let architecturesToStrip = architecturesInPackage.filter { !keepingArchitectures.contains($0) }
try architecturesToStrip.forEach {
if let binaryPath = try binaryPath() {
try stripArchitecture(packagePath: binaryPath, architecture: $0)
}
}
}
private func stripArchitecture(packagePath: AbsolutePath, architecture: String) throws {
try System.shared.run("/usr/bin/lipo", "-remove", architecture, "-output", packagePath.pathString, packagePath.pathString)
}
private func stripHeaders(frameworkPath: AbsolutePath) throws {
try stripDirectory(name: "Headers", from: frameworkPath)
}
private func stripPrivateHeaders(frameworkPath: AbsolutePath) throws {
try stripDirectory(name: "PrivateHeaders", from: frameworkPath)
}
private func stripModulesDirectory(frameworkPath: AbsolutePath) throws {
try stripDirectory(name: "Modules", from: frameworkPath)
}
private func stripDirectory(name: String, from frameworkPath: AbsolutePath) throws {
let path = frameworkPath.appending(RelativePath(name))
if FileHandler.shared.exists(path) {
try FileHandler.shared.delete(path)
}
}
// MARK: - UUID
func uuids() throws -> Set<UUID> {
switch packageType() {
case .framework?, .bundle?:
return try uuidsForFramework()
case .dSYM?:
return try uuidsForDSYM()
default:
return Set()
}
}
private func uuidsForFramework() throws -> Set<UUID> {
guard let binaryPath = try binaryPath() else { return Set() }
return try uuidsFromDwarfdump(path: binaryPath)
}
private func uuidsForDSYM() throws -> Set<UUID> {
return try uuidsFromDwarfdump(path: path)
}
private func uuidsFromDwarfdump(path: AbsolutePath) throws -> Set<UUID> {
let result = try System.shared.capture("/usr/bin/dwarfdump", "--uuid", path.pathString).spm_chuzzle() ?? ""
var uuidCharacterSet = CharacterSet()
uuidCharacterSet.formUnion(.letters)
uuidCharacterSet.formUnion(.decimalDigits)
uuidCharacterSet.formUnion(CharacterSet(charactersIn: "-"))
let scanner = Scanner(string: result)
var uuids = Set<UUID>()
// The output of dwarfdump is a series of lines formatted as follows
// for each architecture:
//
// UUID: <UUID> (<Architecture>) <PathToBinary>
//
while !scanner.isAtEnd {
scanner.scanString("UUID: ", into: nil)
var uuidString: NSString?
scanner.scanCharacters(from: uuidCharacterSet, into: &uuidString)
if let uuidString = uuidString as String?, let uuid = UUID(uuidString: uuidString) {
uuids.insert(uuid)
}
// Scan until a newline or end of file.
scanner.scanUpToCharacters(from: .newlines, into: nil)
}
return uuids
}
func bcSymbolMapsForFramework() throws -> [AbsolutePath] {
let frameworkUUIDs = try uuids()
return frameworkUUIDs.map { path.parentDirectory.appending(RelativePath("\($0.uuidString).bcsymbolmap")) }
}
}

View File

@ -1,142 +0,0 @@
// Reference: https://github.com/Carthage/Carthage/blob/53da2e143306ba502e468842667ee8cd763d5a5b/Source/CarthageKit/Xcode.swift
// Reference: https://pspdfkit.com/guides/ios/current/faq/framework-size/#toc_dsym-and-bcsymbolmaps
// Reference: https://github.com/xcodeswift/xctools/blob/master/Sources/Frameworks/EmbedCommand.swift
import Basic
import Foundation
import TuistCore
protocol FrameworkEmbedding: AnyObject {
func embed(path: RelativePath) throws
}
final class FrameworkEmbedder: FrameworkEmbedding {
// MARK: - Internal
func embed(path: RelativePath) throws {
let environment = try XcodeBuild.Environment()
try embed(frameworkPath: path,
environment: environment)
}
func embed(frameworkPath: RelativePath,
environment: XcodeBuild.Environment) throws {
// Frameworks are copied into: /{built_products/target_build_dir}/{frameworks_folder}/
// DSyms are copied into: /{built_products/target_build_dir}
// BCSymbols are copied into : /{built_products}
// xcodebuild environment variables
let frameworksPath = RelativePath(environment.frameworksFolderPath)
let validArchs = environment.validArchs
let srcRoot = AbsolutePath(environment.srcRoot)
let action = environment.action
var destinationPath: AbsolutePath!
if action == .install {
destinationPath = AbsolutePath(environment.builtProductsDir)
} else {
destinationPath = AbsolutePath(environment.targetBuildDir)
}
let builtProductsDir = AbsolutePath(environment.builtProductsDir)
let frameworkAbsolutePath = srcRoot.appending(frameworkPath)
let frameworkDsymPath = AbsolutePath("\(frameworkAbsolutePath.pathString).dSYM")
let productFrameworksPath = destinationPath.appending(frameworksPath)
let embeddable = Embeddable(path: frameworkAbsolutePath)
if try embeddable.architectures().filter({ validArchs.contains($0) }).isEmpty {
return
}
if !FileHandler.shared.exists(productFrameworksPath) {
try FileHandler.shared.createFolder(productFrameworksPath)
}
let copiedFramework = try copyFramework(
productFrameworksPath: productFrameworksPath,
frameworkAbsolutePath: frameworkAbsolutePath,
validArchs: validArchs
)
try copySymbols(frameworkDsymPath: frameworkDsymPath, destinationPath: destinationPath, validArchs: validArchs)
try copyBCSymbolMaps(action: action, frameworkAbsolutePath: frameworkAbsolutePath, builtProductsDir: builtProductsDir)
if environment.codeSigningAllowed, let codeSigningIdentity = environment.codeSigningIdentity {
try codesignFramework(frameworkPath: copiedFramework, codeSigningIdentity: codeSigningIdentity)
}
}
// MARK: - Fileprivate
private func codesignFramework(frameworkPath: AbsolutePath, codeSigningIdentity: String) throws {
/// We need to ensure the frameworks are codesigned after being copied to the built products directory.
/// Passing `preserve-metadata=identifier,entitlements` ensures any signatures or entitlements which are
/// already there are preserved.
try System.shared.runAndPrint([
"/usr/bin/xcrun",
"codesign", "--force", "--sign", codeSigningIdentity, "--preserve-metadata=identifier,entitlements", frameworkPath.pathString,
])
}
private func copyFramework(
productFrameworksPath: AbsolutePath,
frameworkAbsolutePath: AbsolutePath,
validArchs: [String]
) throws -> AbsolutePath {
let frameworkOutputPath = productFrameworksPath.appending(component: frameworkAbsolutePath.components.last!)
if FileHandler.shared.exists(frameworkOutputPath) {
try FileHandler.shared.delete(frameworkOutputPath)
}
try FileHandler.shared.copy(from: frameworkAbsolutePath,
to: frameworkOutputPath)
let embeddable = Embeddable(path: frameworkOutputPath)
if try embeddable.architectures().count > 1 {
try embeddable.strip(keepingArchitectures: validArchs)
}
return frameworkOutputPath
}
private func copyBCSymbolMaps(action: XcodeBuild.Action,
frameworkAbsolutePath: AbsolutePath,
builtProductsDir: AbsolutePath) throws {
// A BCSymbolMap is a lot like a dSYM for bitcode.
// Xcode builds it as part of creating the app binary, and also for every dynamic framework.
// It's required for re-symbolicating function/method names to understand crashers.
// Symbol maps are per architecture, so there are currently two (armv7 and arm64)
// Install is also used when the app is being archived.
if action == .install {
let embeddable = Embeddable(path: frameworkAbsolutePath)
try embeddable.bcSymbolMapsForFramework().forEach { bcInputPath in
if !FileHandler.shared.exists(bcInputPath) {
return
}
let bcOutputPath = builtProductsDir.appending(component: bcInputPath.components.last!)
if !FileHandler.shared.exists(bcOutputPath.parentDirectory) {
try FileHandler.shared.createFolder(bcOutputPath.parentDirectory)
}
if FileHandler.shared.exists(bcOutputPath) {
try FileHandler.shared.delete(bcOutputPath)
}
try FileHandler.shared.copy(from: bcInputPath, to: bcOutputPath)
}
}
}
private func copySymbols(frameworkDsymPath: AbsolutePath,
destinationPath: AbsolutePath!,
validArchs: [String]) throws {
if FileHandler.shared.exists(frameworkDsymPath) {
let frameworkDsymOutputPath = destinationPath.appending(component: frameworkDsymPath.components.last!)
if FileHandler.shared.exists(frameworkDsymOutputPath) {
try FileHandler.shared.delete(frameworkDsymOutputPath)
}
try FileHandler.shared.copy(from: frameworkDsymPath,
to: frameworkDsymOutputPath)
let embeddable = Embeddable(path: frameworkDsymOutputPath)
if try embeddable.architectures().count > 1 {
try embeddable.strip(keepingArchitectures: validArchs)
}
}
}
}

View File

@ -1,110 +0,0 @@
// Reference: https://developer.apple.com/legacy/library/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html#//apple_ref/doc/uid/TP40003931-CH3-SW105
import Basic
import Foundation
import TuistCore
class XcodeBuild {
public enum Action: String {
case archive
case install
case build
case clean
case installhdrs
case installsrc
}
enum EnvironmentError: FatalError {
case missingVariable(String)
var type: ErrorType {
return .abort
}
var description: String {
switch self {
case let .missingVariable(value):
return "The build variable \(value) is missing."
}
}
}
class Environment {
public let configuration: String
public let frameworksFolderPath: String
public let builtProductsDir: String
public let targetBuildDir: String
public let validArchs: [String]
public let srcRoot: String
public let action: Action
public let codeSigningIdentity: String?
public let codeSigningAllowed: Bool
public init(configuration: String,
frameworksFolderPath: String,
builtProductsDir: String,
targetBuildDir: String,
validArchs: [String],
srcRoot: String,
action: Action,
codeSigningIdentity: String?,
codeSigningAllowed: Bool) {
self.configuration = configuration
self.frameworksFolderPath = frameworksFolderPath
self.builtProductsDir = builtProductsDir
self.targetBuildDir = targetBuildDir
self.validArchs = validArchs
self.srcRoot = srcRoot
self.action = action
self.codeSigningIdentity = codeSigningIdentity
self.codeSigningAllowed = codeSigningAllowed
}
public init(environment: [String: String] = ProcessInfo.processInfo.environment) throws {
guard let configuration = environment["CONFIGURATION"] else {
throw EnvironmentError.missingVariable("CONFIGURATION")
}
guard let frameworksFolderPath = environment["FRAMEWORKS_FOLDER_PATH"] else {
throw EnvironmentError.missingVariable("FRAMEWORKS_FOLDER_PATH")
}
guard let builtProductsDir = environment["BUILT_PRODUCTS_DIR"] else {
throw EnvironmentError.missingVariable("BUILT_PRODUCTS_DIR")
}
guard let targetBuildDir = environment["TARGET_BUILD_DIR"] else {
throw EnvironmentError.missingVariable("TARGET_BUILD_DIR")
}
guard let validArchs = environment["VALID_ARCHS"] else {
throw EnvironmentError.missingVariable("VALID_ARCHS")
}
guard let srcRoot = environment["SRCROOT"] else {
throw EnvironmentError.missingVariable("SRCROOT")
}
guard let action = environment["ACTION"] else {
throw EnvironmentError.missingVariable("ACTION")
}
self.configuration = configuration
self.frameworksFolderPath = frameworksFolderPath
self.builtProductsDir = builtProductsDir
self.targetBuildDir = targetBuildDir
self.validArchs = validArchs.components(separatedBy: " ")
self.srcRoot = srcRoot
self.action = Action(rawValue: action) ?? .install
codeSigningIdentity = environment["CODE_SIGN_IDENTITY"]
codeSigningAllowed = environment["CODE_SIGNING_ALLOWED"]?.uppercased() == "YES"
}
// MARK: - Public
public func destinationPath() -> AbsolutePath {
if action == .install {
return AbsolutePath(builtProductsDir)
} else {
return AbsolutePath(targetBuildDir)
}
}
func frameworksPath() -> AbsolutePath {
return destinationPath().appending(RelativePath(frameworksFolderPath))
}
}
}

View File

@ -0,0 +1,497 @@
BCSymbolMap Version: 2.0
_$s10RxBlocking9AtomicIntCACycfcTo
_$s7RxSwift25ObservableConvertibleTypeP0A8BlockingE02toF07timeoutAD0fC0Vy7ElementQzGSdSg_tFfA_
__swift_FORCE_LOAD_$_swiftCompatibility50
__swift_FORCE_LOAD_$_swiftCompatibilityDynamicReplacements
_$sSo12CFRunLoopRefaMa
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_token0
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_token1
_$s10RxBlocking9AtomicIntC5value33_421DB3E1E0285CE4C5C66128EB186D4FLLs5Int32VvpWvd
_$s10RxBlockingMXM
_symbolic So6NSLockC
_$s10RxBlocking9AtomicIntCML
_$s10RxBlocking9AtomicIntCMf
_symbolic _____ 10RxBlocking9AtomicIntC
_symbolic s5Int32V
_$s10RxBlocking9AtomicIntCMF
__swift_FORCE_LOAD_$_swiftCompatibility50_$_RxBlocking
__swift_FORCE_LOAD_$_swiftCompatibilityDynamicReplacements_$_RxBlocking
_$sSoMXM
_$sSo12CFRunLoopRefaMn
_$sSo12CFRunLoopRefaMf
_$sSo12CFRunLoopRefaML
___swift_reflection_version
_objc_classes
Apple clang version 11.0.0 (clang-1100.0.33.7)
<swift-imported-modules>
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift
Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/AtomicInt.swift
$sSo12CFRunLoopRefaMa
<compiler-generated>
$s7RxSwift25ObservableConvertibleTypeP0A8BlockingE02toF07timeoutAD0fC0Vy7ElementQzGSdSg_tFfA_
$s10RxBlocking11RunLoopLockC8_timeoutSdSgvpfi
$s10RxBlocking11RunLoopLockC07_calledC0AA9AtomicIntCvpfi
init
$s10RxBlocking9AtomicIntCMa
isFlagSet
load
decrement
sub
increment
add
fetchOr
deinit
$ss25_unimplementedInitializer9className04initD04file4line6columns5NeverOs12StaticStringV_A2JS2utFySRys5UInt8VGXEfU0_
$s10RxBlocking9AtomicIntCyACs5Int32VcfcfA_
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/Platform.Linux.swift
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func0
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func1
_$s10RxBlocking11RunLoopLockC8_timeoutSdSgvM.resume.0
_$s10RxBlocking11RunLoopLockCIetMg_TC
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_TA
_$sIeg_IeyB_TR
_block_copy_helper
_block_destroy_helper
_$s10RxBlocking11RunLoopLockC4stopyyFyycfU_TA
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_TA
_$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TRTA
___swift_destroy_boxed_opaque_existential_1
_block_destroy_helper.2
_block_copy_helper.1
_symbolic Ieg_
_block_descriptor
_block_descriptor.3
_$s7RxSwift0A5ErrorOACs0C0AAWL
_$s10RxBlocking11RunLoopLockCML
_$s10RxBlocking11RunLoopLockCMf
_symbolic _____ 10RxBlocking11RunLoopLockC
_symbolic So12CFRunLoopRefa
_symbolic 10RxBlocking9AtomicIntC
_symbolic SdSg
_$s10RxBlocking11RunLoopLockCMF
_symbolic 7RxSwift10Disposable_pIegr_
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/RunLoopLock.swift
__swift_destroy_boxed_opaque_existential_1
$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TRTA
$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TR
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_TA
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_
run
RxBlocking/Platform/AtomicInt.swift
$s7RxSwift0A5ErrorOACs0C0AAWl
$s10RxBlocking11runLoopModeSo05CFRundE0avau
$s10RxBlocking11RunLoopLockC4stopyyFyycfU_TA
$s10RxBlocking11RunLoopLockC4stopyyFyycfU_
stop
$s10RxBlocking14runLoopModeRawSo11CFStringRefavau
block_destroy_helper
block_copy_helper
$sIeg_IeyB_TR
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_TA
objectdestroy
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_
dispatch
$s10RxBlocking11RunLoopLockCMa
_timeout.modify
_timeout.set
_timeout.get
_calledStop.get
_calledRun.get
_currentRunLoop.get
globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func1
globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func0
_$s10RxBlocking0B10ObservableVMi
_$s10RxBlocking0B10ObservableVwCP
_$s10RxBlocking0B10ObservableVwxx
_$s10RxBlocking0B10ObservableVwcp
_$s10RxBlocking0B10ObservableVwca
___swift_memcpy16_8
_$s10RxBlocking0B10ObservableVwta
_$s10RxBlocking0B10ObservableVwet
_$s10RxBlocking0B10ObservableVwst
_$s10RxBlocking0B10ObservableVWV
_$s10RxBlocking0B10ObservableVMI
_$s10RxBlocking0B10ObservableVMP
_symbolic _____ 10RxBlocking0B10ObservableV
_symbolic 7RxSwift10ObservableCyxG
_$s10RxBlocking0B10ObservableVMF
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/BlockingObservable.swift
$s10RxBlocking0B10ObservableVMa
$s10RxBlocking0B10ObservableVwst
$s10RxBlocking0B10ObservableVwet
$s10RxBlocking0B10ObservableVwta
__swift_memcpy16_8
$s10RxBlocking0B10ObservableVwca
$s10RxBlocking0B10ObservableVwcp
$s10RxBlocking0B10ObservableVwxx
$s10RxBlocking0B10ObservableVwCP
$s10RxBlocking0B10ObservableVMi
source.get
timeout.get
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctF
_$s10RxBlocking0B10ObservableV5firstxSgyKFTm
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_
_$s10RxBlocking26MaterializedSequenceResultOyxGlWOe
_$s10RxBlocking0B10ObservableV6singlexyKFSbxcfU_TA
_$sxSglWOh
_$s10RxBlocking26MaterializedSequenceResultOMi
_$s10RxBlocking26MaterializedSequenceResultOwCP
_$s10RxBlocking26MaterializedSequenceResultOyxGlWOy
_$s10RxBlocking26MaterializedSequenceResultOwxx
_$s10RxBlocking26MaterializedSequenceResultOwcp
_$s10RxBlocking26MaterializedSequenceResultOwca
___swift_memcpy8_4
_$s10RxBlocking26MaterializedSequenceResultOwta
_$s10RxBlocking26MaterializedSequenceResultOwet
_$s10RxBlocking26MaterializedSequenceResultOwst
_$s10RxBlocking26MaterializedSequenceResultOwug
_$s10RxBlocking26MaterializedSequenceResultOwup
_$s10RxBlocking26MaterializedSequenceResultOwui
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_TA
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_TA
_$s7RxSwift5EventOyxGlWOc
_$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntFTf4ngn_n
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_SbxcfU_TA
_symbolic x
_symbolic B0
_$s10RxBlocking26MaterializedSequenceResultOWV
_$s10RxBlocking26MaterializedSequenceResultOMI
_$s10RxBlocking26MaterializedSequenceResultOMP
_symbolic _____ 10RxBlocking26MaterializedSequenceResultO
_$s10RxBlocking26MaterializedSequenceResultOMB
_symbolic SayxG8elements_t
_symbolic SayxG8elements_s5Error_p5errort
_$s10RxBlocking26MaterializedSequenceResultOMF
_symbolic SayxG
_symbolic s5Error_pSg
_symbolic 10RxBlocking0B10ObservableVyxG
_symbolic 7RxSwift26SingleAssignmentDisposableC
_symbolic xSbs5Error_pIegndzo_
_symbolic SayxGz_x_lXX
_symbolic SiSg
_symbolic 10RxBlocking11RunLoopLockC
_symbolic s5Error_pSgz_Xx
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/BlockingObservable+Operators.swift
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_SbxcfU_TA
objectdestroy.14
$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntFTf4ngn_n
$s7RxSwift5EventOyxGlWOc
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_TA
objectdestroy.11
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_TA
objectdestroy.8
objectdestroy.5
objectdestroy.2
$s10RxBlocking26MaterializedSequenceResultOMa
$s10RxBlocking26MaterializedSequenceResultOwui
$s10RxBlocking26MaterializedSequenceResultOwup
$s10RxBlocking26MaterializedSequenceResultOwug
$s10RxBlocking26MaterializedSequenceResultOwst
$s10RxBlocking26MaterializedSequenceResultOwet
$s10RxBlocking26MaterializedSequenceResultOwta
__swift_memcpy8_4
$s10RxBlocking26MaterializedSequenceResultOwca
$s10RxBlocking26MaterializedSequenceResultOwcp
$s10RxBlocking26MaterializedSequenceResultOwxx
$s10RxBlocking26MaterializedSequenceResultOwCP
$s10RxBlocking26MaterializedSequenceResultOMi
$sxSglWOh
$s10RxBlocking0B10ObservableV6singlexyKFSbxcfU_TA
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_
append
$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntF
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_
materialize
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_
single
elementsOrThrow
first
materializeResult
$defer
RxBlocking/RunLoopLock.swift
toArray
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/ObservableConvertibleType+Blocking.swift
toBlocking
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Resources.swift
_$sypWOb
_$sypSgML
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/Platform.Darwin.swift
$sypWOb
getThreadLocalStorageValueForKey
$sypSgMa
setThreadLocalStorageValue
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/RecursiveLock.swift
Apple clang version 11.0.0 (clang-1100.0.33.8)
/Users/pedropinera/Library/Caches/org.carthage.CarthageKit/DerivedData/11.1_11A1027/RxSwift/5.0.1/Build/Intermediates.noindex/ArchiveIntermediates/RxBlocking/IntermediateBuildFilesPath/Rx.build/Release-iphoneos/RxBlocking.build/DerivedSources/RxBlocking_vers.c
__ZL15__ARCLite__loadv
__ZL30add_image_hook_autoreleasepoolPK11mach_headerl
__ZL34__arclite_objc_autoreleasePoolPushv
__ZL33__arclite_objc_autoreleasePoolPopPv
__ZL19patch_lazy_pointersPK11mach_headerP7patch_tm
__ZL42__arclite_NSArray_objectAtIndexedSubscriptP7NSArrayP13objc_selectorj
__ZL53__arclite_NSMutableArray_setObject_atIndexedSubscriptP14NSMutableArrayP13objc_selectorP11objc_objectj
__ZL46__arclite_NSDictionary_objectForKeyedSubscriptP12NSDictionaryP13objc_selectorP11objc_object
__ZL47__arclite_NSOrderedSet_objectAtIndexedSubscriptP12NSOrderedSetP13objc_selectorj
__ZL58__arclite_NSMutableOrderedSet_setObject_atIndexedSubscriptP19NSMutableOrderedSetP13objc_selectorP11objc_objectj
__ZL58__arclite_NSMutableDictionary__setObject_forKeyedSubscriptP19NSMutableDictionaryP13objc_selectorP11objc_objectS4_
__ZL18add_image_hook_ARCPK11mach_headerl
__ZL27__arclite_objc_loadClassrefPP10objc_class
__ZL36__arclite_object_setInstanceVariableP11objc_objectPKcPv
__ZL24__arclite_object_setIvarP11objc_objectP9objc_ivarS0_
__ZL21__arclite_object_copyP11objc_objectm
__ZL21__arclite_objc_retainP11objc_object
__ZL26__arclite_objc_retainBlockP11objc_object
__ZL22__arclite_objc_releaseP11objc_object
__ZL26__arclite_objc_autoreleaseP11objc_object
__ZL32__arclite_objc_retainAutoreleaseP11objc_object
__ZL37__arclite_objc_autoreleaseReturnValueP11objc_object
__ZL43__arclite_objc_retainAutoreleaseReturnValueP11objc_object
__ZL44__arclite_objc_retainAutoreleasedReturnValueP11objc_object
__ZL26__arclite_objc_storeStrongPP11objc_objectS0_
__ZL22add_image_hook_swiftV1PK11mach_headerl
__ZL42__arclite_NSUndoManagerProxy_isKindOfClassP11objc_objectP13objc_selectorP10objc_class
__ZL30__arclite_NSManagedObject_initP11objc_objectP13objc_selector
__ZL41__arclite_NSManagedObject_allocWithEntityP11objc_objectP13objc_selectorS0_
__ZL36__arclite_NSManagedObject_allocBatchP11objc_objectP13objc_selectorPS0_S0_j
__ZL37__arclite_NSKKMS_fastIndexForKnownKeyP11objc_objectP13objc_selectorS0_
__ZL28__arclite_NSKKMS_indexForKeyP11objc_objectP13objc_selectorS0_
__ZL29__arclite_NSKKsD_objectForKeyP11objc_objectP13objc_selectorS0_
__ZL35__arclite_NSKKsD_removeObjectForKeyP11objc_objectP13objc_selectorS0_
__ZL33__arclite_NSKKsD_setObject_forKeyP11objc_objectP13objc_selectorS0_S0_
__ZL41__arclite_NSKKsD_addEntriesFromDictionaryP11objc_objectP13objc_selectorP12NSDictionary
__ZL28__arclite_objc_readClassPairP10objc_classPK15objc_image_info
__ZL32__arclite_objc_allocateClassPairP10objc_classPKcm
__ZL32__arclite_object_getIndexedIvarsP11objc_object
__ZL23__arclite_objc_getClassPKc
__ZL27__arclite_objc_getMetaClassPKc
__ZL31__arclite_objc_getRequiredClassPKc
__ZL26__arclite_objc_lookUpClassPKc
__ZL26__arclite_objc_getProtocolPKc
__ZL23__arclite_class_getNameP10objc_class
__ZL26__arclite_protocol_getNameP8Protocol
__ZL37__arclite_objc_copyClassNamesForImagePKcPj
__ZL17transcribeMethodsP10objc_classP15glue_class_ro_t
__ZL19transcribeProtocolsP10objc_classP15glue_class_ro_t
__ZL20transcribePropertiesP10objc_classP15glue_class_ro_t
__ZL14initialize_impP11objc_objectP13objc_selector
__ZL18allocateMaybeSwiftP18glue_swift_class_tm
__ZL22copySwiftV1MangledNamePKcb
__ZL13demangledNamePKcb
__ZL16scanMangledFieldRPKcS0_S1_Ri
__ZL30arclite_uninitialized_functionv
__ZL12cxxConstructP11objc_object
__ZL20fixStringForCoreDataP11objc_object
_OBJC_METACLASS_$___ARCLite__
__ZL24OBJC_CLASS_$___ARCLite__
__ZL31OBJC_METACLASS_RO_$___ARCLite__
__non_lazy_classes
__ZL27OBJC_CLASS_RO_$___ARCLite__
__ZL11_class_name
__ZL32OBJC_$_CLASS_METHODS___ARCLite__
__ZL17_load_method_name
__ZL17_load_method_type
__ZL23NSAutoreleasePool_class
__ZZL30add_image_hook_autoreleasepoolPK11mach_headerlE7patches
__ZGVZL30add_image_hook_autoreleasepoolPK11mach_headerlE7patches
__OBJC_PROTOCOL_$___ARCLiteIndexedSubscripting__
__OBJC_LABEL_PROTOCOL_$___ARCLiteIndexedSubscripting__
l_OBJC_PROTOCOL_REFERENCE_$___ARCLiteIndexedSubscripting__
__OBJC_PROTOCOL_$___ARCLiteKeyedSubscripting__
__OBJC_LABEL_PROTOCOL_$___ARCLiteKeyedSubscripting__
l_OBJC_PROTOCOL_REFERENCE_$___ARCLiteKeyedSubscripting__
__ZZL18add_image_hook_ARCPK11mach_headerlE7patches
__ZGVZL18add_image_hook_ARCPK11mach_headerlE7patches
__ZL30NSUndoManagerProxy_targetClass
__ZL29original_NSManagedObject_init
__ZL40original_NSManagedObject_allocWithEntity
__ZL35original_NSManagedObject_allocBatch
__ZL25NSMutableDictionary_class
__ZL22NSConstantString_class
__ZL14NSString_class
__ZL36original_NSKKMS_fastIndexForKnownKey
__ZL27original_NSKKMS_indexForKey
__ZL28original_NSKKsD_objectForKey
__ZL34original_NSKKsD_removeObjectForKey
__ZL32original_NSKKsD_setObject_forKey
__ZL40original_NSKKsD_addEntriesFromDictionary
__ZZL22add_image_hook_swiftV1PK11mach_headerlE7patches
__ZGVZL22add_image_hook_swiftV1PK11mach_headerlE7patches
__ZL31original_objc_allocateClassPair
__ZL31original_object_getIndexedIvars
__ZL22original_objc_getClass
__ZL26original_objc_getMetaClass
__ZL30original_objc_getRequiredClass
__ZL25original_objc_lookUpClass
__ZL25original_objc_getProtocol
__ZL22original_class_getName
__ZL25original_protocol_getName
__ZL36original_objc_copyClassNamesForImage
__ZL12demangleLock
__ZL9Demangled
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c++ --target=armv7-apple-ios4.3 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=c++11 -Wno-trigraphs -fno-exceptions -fno-rtti -fno-sanitize=vptr -mpascal-strings -Os -Wno-missing-field-initializers -Wmissing-prototypes -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wno-non-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wno-missing-braces -Wparentheses -Wswitch -Wno-unused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-float-conversion -Wno-non-literal-null-conversion -Wno-objc-literal-conversion -Wshorten-64-to-32 -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -Wno-c++11-extensions -D NDEBUG=1 -D OBJC_OLD_DISPATCH_PROTOTYPES=1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -Winvalid-offsetof -g -fno-threadsafe-statics -Wno-sign-conversion -Wno-infinite-recursion -Wno-move -Wno-comma -Wno-block-capture-autoreleasing -Wno-strict-prototypes -Wno-range-loop-analysis -Wno-semicolon-before-method-body -fembed-bitcode=all -iquote /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-generated-files.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-own-target-headers.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-all-target-headers.hmap -iquote /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-project-headers.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/Symbols/BuiltProducts/include -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources-normal/armv7 -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources/armv7 -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources -F/Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/Symbols/BuiltProducts -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk/System/Library/PrivateFrameworks -Wall -Wextra -Wno-gcc-compat -Wno-error=incomplete-umbrella -Wno-error=invalid-ios-deployment-target -Wno-error=deprecated-declarations -Wno-error=documentation -Wno-error=incomplete-umbrella -Wno-error=invalid-ios-deployment-target -Wno-error=deprecated-declarations -Wno-error=documentation -MMD -MT dependencies -MF /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/armv7/arclite.d --serialize-diagnostics /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/armv7/arclite.dia -c /Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76/source/arclite.mm -o /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/armv7/arclite.o -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -march=armv7a
/Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76/source/arclite.mm
/Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76
fixStringForCoreData
source/arclite.mm
cxxConstruct
arclite_uninitialized_function
scanMangledField
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk/usr/include/_ctype.h
__isctype
demangledName
copySwiftV1DemangledName
copySwiftV1MangledName
allocateMaybeSwift
word_align
isSwift
initialize_imp
transcribeProperties
property_list_nth
transcribeProtocols
transcribeMethods
data
method_list_nth
__arclite_objc_copyClassNamesForImage
__arclite_protocol_getName
__arclite_class_getName
__arclite_objc_getProtocol
__arclite_objc_lookUpClass
__arclite_objc_getRequiredClass
__arclite_objc_getMetaClass
__arclite_objc_getClass
__arclite_object_getIndexedIvars
__arclite_objc_allocateClassPair
metaclass
__arclite_objc_readClassPair
transcribeIvars
ivar_list_nth
max
alignment
ro
fastFlags
__arclite_NSKKsD_addEntriesFromDictionary
__arclite_NSKKsD_setObject_forKey
__arclite_NSKKsD_removeObjectForKey
__arclite_NSKKsD_objectForKey
__arclite_NSKKMS_indexForKey
__arclite_NSKKMS_fastIndexForKnownKey
__arclite_NSManagedObject_allocBatch
__arclite_NSManagedObject_allocWithEntity
__arclite_NSManagedObject_init
__arclite_NSUndoManagerProxy_isKindOfClass
add_image_hook_swiftV1
patch_t<const char **(const char *, unsigned int *)>
patch_t<const char *(Protocol *)>
patch_t<const char *(Class)>
patch_t<Protocol *(const char *)>
patch_t<Class (const char *)>
patch_t<void *(id)>
patch_t<Class (Class, const char *, unsigned long)>
patch_t<Class (Class, const objc_image_info *)>
__arclite_objc_storeStrong
__arclite_objc_release
__arclite_objc_retain
__arclite_objc_retainAutoreleasedReturnValue
__arclite_objc_retainAutoreleaseReturnValue
__arclite_objc_autoreleaseReturnValue
__arclite_objc_retainAutorelease
__arclite_objc_autorelease
__arclite_objc_retainBlock
__arclite_object_copy
fixupCopiedReferences
_class_getInstanceStart
alignedInstanceStart
__arclite_class_usesAutomaticRetainRelease
classOrSuperClassesUseARR
__arclite_object_setIvar
isScannedOffset
_ivar_getClass
__arclite_object_setInstanceVariable
__arclite_objc_loadClassref
add_image_hook_ARC
patch_t<void (id *, id)>
patch_t<id (id)>
patch_t<void (id)>
patch_t<id (id, unsigned long)>
patch_t<void (id, objc_ivar *, id)>
patch_t<objc_ivar *(id, const char *, void *)>
patch_t<Class (Class *)>
__arclite_NSMutableDictionary__setObject_forKeyedSubscript
__arclite_NSMutableOrderedSet_setObject_atIndexedSubscript
__arclite_NSOrderedSet_objectAtIndexedSubscript
__arclite_NSDictionary_objectForKeyedSubscript
__arclite_NSMutableArray_setObject_atIndexedSubscript
__arclite_NSArray_objectAtIndexedSubscript
patch_lazy_pointers
__arclite_objc_autoreleasePoolPop
__arclite_objc_autoreleasePoolPush
add_image_hook_autoreleasepool
patch_t<void (void *)>
patch_t<void *()>
__ARCLite__load
install_swiftV1
replaceMethod
install_ARC
install_dict_nil_value
addOrReplaceMethod
keyedGetter
install_subscripting
addMethod
indexedGetter
install_autoreleasepool
_swift_getFunctionReplacement50
_swift_getOrigOfReplaceable50
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/CompatibilityDynamicReplacements -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibilityDynamicReplacements -fembed-bitcode=all --target=armv7-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch armv7 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-armv7.dir/DynamicReplaceable.cpp.o -MF stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-armv7.dir/DynamicReplaceable.cpp.o.d -o stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-armv7.dir/DynamicReplaceable.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -march=armv7a -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/swift-macosx-x86_64
swift_getOrigOfReplaceable50
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp
/BuildRoot/Library/Caches/com.apple.xbs
swift_getFunctionReplacement50
__ZN5swift17getRootSuperclassEv
__ZN5swift34swift50override_conformsToProtocolEPKNS_14TargetMetadataINS_9InProcessEEEPKNS_24TargetProtocolDescriptorIS1_EEPFPKNS_18TargetWitnessTableIS1_EES4_S8_E
__ZL24registerAddImageCallbackPv
__ZZZN5swift17getRootSuperclassEvENK3$_0clEvENUlPvE_8__invokeES1_
__ZL16addImageCallbackPK11mach_headerl
__ZZN5swift34swift50override_conformsToProtocolEPKNS_14TargetMetadataINS_9InProcessEEEPKNS_24TargetProtocolDescriptorIS1_EEPFPKNS_18TargetWitnessTableIS1_EES4_S8_EE5token
__ZZZN5swift17getRootSuperclassEvENK3$_0clEvE7TheLazy
__ZL27ProtocolConformancesSection
_DummyTargetContextDescriptor
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/Compatibility50 -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50 -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibility50 -fembed-bitcode=all --target=armv7-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch armv7 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/ProtocolConformance.cpp.o -MF stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/ProtocolConformance.cpp.o.d -o stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/ProtocolConformance.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -march=armv7a -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp
addImageCallback
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp
_getTypeDescriptorLocation
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/ABI/Metadata.h
get
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/Basic/RelativePointer.h
getTypeKind
getTypeReferenceKind
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/ABI/MetadataValues.h
applyRelativeOffset<const swift::RelativeDirectPointerImpl<swift::TargetProtocolConformanceDescriptor<swift::InProcess>, false, int>, int>
__invoke
operator()
registerAddImageCallback
swift50override_conformsToProtocol
_swift50override_class_getSuperclass
getMetadataForClass
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/../../public/runtime/Private.h
dyn_cast<swift::TargetForeignClassMetadata<swift::InProcess>, const swift::TargetMetadata<swift::InProcess> >
Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include/llvm/Support/Casting.h
isa<swift::TargetForeignClassMetadata<swift::InProcess>, const swift::TargetMetadata<swift::InProcess> *>
doit
classof
getKind
classHasSuperclass
getClassObject
getEnumeratedMetadataKind
CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/usr/include/dispatch/once.h
/BuildRoot
getRootSuperclass
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/Basic/Lazy.h
_Overrides
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/Compatibility50 -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50 -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibility50 -fembed-bitcode=all --target=armv7-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch armv7 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/Overrides.cpp.o -MF stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/Overrides.cpp.o.d -o stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-armv7.dir/Overrides.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/Overrides.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -march=armv7a -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/Overrides.cpp

View File

@ -0,0 +1,424 @@
BCSymbolMap Version: 2.0
_$s10RxBlocking9AtomicIntCACycfcTo
_$s7RxSwift25ObservableConvertibleTypeP0A8BlockingE02toF07timeoutAD0fC0Vy7ElementQzGSdSg_tFfA_
__swift_FORCE_LOAD_$_swiftCompatibility50
__swift_FORCE_LOAD_$_swiftCompatibilityDynamicReplacements
_$sSo12CFRunLoopRefaMa
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_token0
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_token1
_$s10RxBlocking9AtomicIntC5value33_421DB3E1E0285CE4C5C66128EB186D4FLLs5Int32VvpWvd
_$s10RxBlockingMXM
_symbolic So6NSLockC
_$s10RxBlocking9AtomicIntCML
_$s10RxBlocking9AtomicIntCMf
_symbolic _____ 10RxBlocking9AtomicIntC
_symbolic s5Int32V
_$s10RxBlocking9AtomicIntCMF
__swift_FORCE_LOAD_$_swiftCompatibility50_$_RxBlocking
__swift_FORCE_LOAD_$_swiftCompatibilityDynamicReplacements_$_RxBlocking
_$sSoMXM
_$sSo12CFRunLoopRefaMn
_$sSo12CFRunLoopRefaMf
_$sSo12CFRunLoopRefaML
___swift_reflection_version
_objc_classes
Apple clang version 11.0.0 (clang-1100.0.33.7)
<swift-imported-modules>
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift
Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/AtomicInt.swift
$sSo12CFRunLoopRefaMa
<compiler-generated>
$s7RxSwift25ObservableConvertibleTypeP0A8BlockingE02toF07timeoutAD0fC0Vy7ElementQzGSdSg_tFfA_
$s10RxBlocking11RunLoopLockC8_timeoutSdSgvpfi
$s10RxBlocking11RunLoopLockC07_calledC0AA9AtomicIntCvpfi
init
$s10RxBlocking9AtomicIntCMa
isFlagSet
load
decrement
sub
increment
add
fetchOr
deinit
$ss25_unimplementedInitializer9className04initD04file4line6columns5NeverOs12StaticStringV_A2JS2utFySRys5UInt8VGXEfU0_
$ss25_unimplementedInitializer9className04initD04file4line6columns5NeverOs12StaticStringV_A2JS2utFySRys5UInt8VGXEfU0_yAMXEfU_
$s10RxBlocking9AtomicIntCyACs5Int32VcfcfA_
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/Platform.Linux.swift
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func0
_globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func1
_$s10RxBlocking11RunLoopLockC8_timeoutSdSgvM.resume.0
_$s10RxBlocking11RunLoopLockCIetMg_TC
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_TA
_$sIeg_IeyB_TR
_block_copy_helper
_block_destroy_helper
_$s10RxBlocking11RunLoopLockC4stopyyFyycfU_TA
_$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_TA
_$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TRTA
___swift_destroy_boxed_opaque_existential_1
_block_destroy_helper.2
_block_copy_helper.1
_symbolic Ieg_
_block_descriptor
_block_descriptor.3
_$s7RxSwift0A5ErrorOACs0C0AAWL
_$s10RxBlocking11RunLoopLockCML
_$s10RxBlocking11RunLoopLockCMf
_symbolic _____ 10RxBlocking11RunLoopLockC
_symbolic So12CFRunLoopRefa
_symbolic 10RxBlocking9AtomicIntC
_symbolic SdSg
_$s10RxBlocking11RunLoopLockCMF
_symbolic 7RxSwift10Disposable_pIegr_
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/RunLoopLock.swift
__swift_destroy_boxed_opaque_existential_1
$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TRTA
$s7RxSwift10Disposable_pIegr_ytAaB_pIegnr_TR
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_TA
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_0A5Swift10Disposable_pyt_tcfU_
run
RxBlocking/Platform/AtomicInt.swift
$s7RxSwift0A5ErrorOACs0C0AAWl
$s10RxBlocking11runLoopModeSo05CFRundE0avau
$s10RxBlocking11RunLoopLockC4stopyyFyycfU_TA
$s10RxBlocking11RunLoopLockC4stopyyFyycfU_
stop
$s10RxBlocking14runLoopModeRawSo11CFStringRefavau
block_destroy_helper
block_copy_helper
$sIeg_IeyB_TR
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_TA
objectdestroy
$s10RxBlocking11RunLoopLockC8dispatchyyyycFyycfU_
dispatch
$s10RxBlocking11RunLoopLockCMa
_timeout.modify
_timeout.set
_timeout.get
_calledStop.get
_calledRun.get
_currentRunLoop.get
globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func1
globalinit_33_1F60DA86C84B27029121D0E75CB7DC8D_func0
_$s10RxBlocking0B10ObservableVMi
_$s10RxBlocking0B10ObservableVwCP
_$s10RxBlocking0B10ObservableVwxx
_$s10RxBlocking0B10ObservableVwcp
_$s10RxBlocking0B10ObservableVwca
___swift_memcpy24_8
_$s10RxBlocking0B10ObservableVwta
_$s10RxBlocking0B10ObservableVwet
_$s10RxBlocking0B10ObservableVwst
_$s10RxBlocking0B10ObservableVWV
_$s10RxBlocking0B10ObservableVMI
_$s10RxBlocking0B10ObservableVMP
_symbolic _____ 10RxBlocking0B10ObservableV
_symbolic 7RxSwift10ObservableCyxG
_$s10RxBlocking0B10ObservableVMF
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/BlockingObservable.swift
$s10RxBlocking0B10ObservableVMa
$s10RxBlocking0B10ObservableVwst
$s10RxBlocking0B10ObservableVwet
$s10RxBlocking0B10ObservableVwta
__swift_memcpy24_8
$s10RxBlocking0B10ObservableVwca
$s10RxBlocking0B10ObservableVwcp
$s10RxBlocking0B10ObservableVwxx
$s10RxBlocking0B10ObservableVwCP
$s10RxBlocking0B10ObservableVMi
source.get
timeout.get
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctF
_$s10RxBlocking0B10ObservableV5firstxSgyKFTm
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_
_$s10RxBlocking26MaterializedSequenceResultOyxGlWOe
_$s10RxBlocking0B10ObservableV6singlexyKFSbxcfU_TA
_$sxSglWOh
_$s10RxBlocking26MaterializedSequenceResultOMi
_$s10RxBlocking26MaterializedSequenceResultOwCP
_$s10RxBlocking26MaterializedSequenceResultOyxGlWOy
_$s10RxBlocking26MaterializedSequenceResultOwxx
_$s10RxBlocking26MaterializedSequenceResultOwcp
_$s10RxBlocking26MaterializedSequenceResultOwca
___swift_memcpy16_8
_$s10RxBlocking26MaterializedSequenceResultOwta
_$s10RxBlocking26MaterializedSequenceResultOwet
_$s10RxBlocking26MaterializedSequenceResultOwst
_$s10RxBlocking26MaterializedSequenceResultOwug
_$s10RxBlocking26MaterializedSequenceResultOwup
_$s10RxBlocking26MaterializedSequenceResultOwui
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_TA
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_TA
_$s7RxSwift5EventOyxGlWOc
_$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntFTf4ngn_n
_$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_SbxcfU_TA
_symbolic x
_symbolic B0
_$s10RxBlocking26MaterializedSequenceResultOWV
_$s10RxBlocking26MaterializedSequenceResultOMI
_$s10RxBlocking26MaterializedSequenceResultOMP
_symbolic _____ 10RxBlocking26MaterializedSequenceResultO
_$s10RxBlocking26MaterializedSequenceResultOMB
_symbolic SayxG8elements_t
_symbolic SayxG8elements_s5Error_p5errort
_$s10RxBlocking26MaterializedSequenceResultOMF
_symbolic SayxG
_symbolic s5Error_pSg
_symbolic 10RxBlocking0B10ObservableVyxG
_symbolic 7RxSwift26SingleAssignmentDisposableC
_symbolic xSbs5Error_pIegndzo_
_symbolic SayxGz_x_lXX
_symbolic SiSg
_symbolic 10RxBlocking11RunLoopLockC
_symbolic s5Error_pSgz_Xx
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/BlockingObservable+Operators.swift
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_SbxcfU_TA
objectdestroy.14
$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntFTf4ngn_n
$s7RxSwift5EventOyxGlWOc
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_TA
objectdestroy.11
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_TA
objectdestroy.8
objectdestroy.5
objectdestroy.2
$s10RxBlocking26MaterializedSequenceResultOMa
$s10RxBlocking26MaterializedSequenceResultOwui
$s10RxBlocking26MaterializedSequenceResultOwup
$s10RxBlocking26MaterializedSequenceResultOwug
$s10RxBlocking26MaterializedSequenceResultOwst
$s10RxBlocking26MaterializedSequenceResultOwet
$s10RxBlocking26MaterializedSequenceResultOwta
__swift_memcpy16_8
$s10RxBlocking26MaterializedSequenceResultOwca
$s10RxBlocking26MaterializedSequenceResultOwcp
$s10RxBlocking26MaterializedSequenceResultOwxx
$s10RxBlocking26MaterializedSequenceResultOwCP
$s10RxBlocking26MaterializedSequenceResultOMi
$sxSglWOh
$s10RxBlocking0B10ObservableV6singlexyKFSbxcfU_TA
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_y0A5Swift5EventOyxGcfU_
append
$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntF
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFyycfU_
materialize
$s10RxBlocking0B10ObservableV17materializeResult33_0B722750ACA186F976F8768615F683CBLL3max9predicateAA020MaterializedSequenceE0OyxGSiSg_SbxKctFfA0_
single
elementsOrThrow
first
materializeResult
$defer
RxBlocking/RunLoopLock.swift
toArray
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/ObservableConvertibleType+Blocking.swift
toBlocking
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Resources.swift
_$sypWOb
_$sypSgML
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/Platform.Darwin.swift
$sypWOb
getThreadLocalStorageValueForKey
$sypSgMa
setThreadLocalStorageValue
/Users/pedropinera/Downloads/Carthage/Checkouts/RxSwift/RxBlocking/Platform/RecursiveLock.swift
Apple clang version 11.0.0 (clang-1100.0.33.8)
/Users/pedropinera/Library/Caches/org.carthage.CarthageKit/DerivedData/11.1_11A1027/RxSwift/5.0.1/Build/Intermediates.noindex/ArchiveIntermediates/RxBlocking/IntermediateBuildFilesPath/Rx.build/Release-iphoneos/RxBlocking.build/DerivedSources/RxBlocking_vers.c
__ZL15__ARCLite__loadv
__ZL58__arclite_NSMutableDictionary__setObject_forKeyedSubscriptP19NSMutableDictionaryP13objc_selectorP11objc_objectS4_
__ZL22add_image_hook_swiftV1PK11mach_headerl
__ZL42__arclite_NSUndoManagerProxy_isKindOfClassP11objc_objectP13objc_selectorP10objc_class
__ZL30__arclite_NSManagedObject_initP11objc_objectP13objc_selector
__ZL41__arclite_NSManagedObject_allocWithEntityP11objc_objectP13objc_selectorS0_
__ZL36__arclite_NSManagedObject_allocBatchP11objc_objectP13objc_selectorPS0_S0_j
__ZL37__arclite_NSKKMS_fastIndexForKnownKeyP11objc_objectP13objc_selectorS0_
__ZL28__arclite_NSKKMS_indexForKeyP11objc_objectP13objc_selectorS0_
__ZL29__arclite_NSKKsD_objectForKeyP11objc_objectP13objc_selectorS0_
__ZL35__arclite_NSKKsD_removeObjectForKeyP11objc_objectP13objc_selectorS0_
__ZL33__arclite_NSKKsD_setObject_forKeyP11objc_objectP13objc_selectorS0_S0_
__ZL41__arclite_NSKKsD_addEntriesFromDictionaryP11objc_objectP13objc_selectorP12NSDictionary
__ZL28__arclite_objc_readClassPairP10objc_classPK15objc_image_info
__ZL32__arclite_objc_allocateClassPairP10objc_classPKcm
__ZL32__arclite_object_getIndexedIvarsP11objc_object
__ZL23__arclite_objc_getClassPKc
__ZL27__arclite_objc_getMetaClassPKc
__ZL31__arclite_objc_getRequiredClassPKc
__ZL26__arclite_objc_lookUpClassPKc
__ZL26__arclite_objc_getProtocolPKc
__ZL23__arclite_class_getNameP10objc_class
__ZL26__arclite_protocol_getNameP8Protocol
__ZL37__arclite_objc_copyClassNamesForImagePKcPj
__ZL17transcribeMethodsP10objc_classP15glue_class_ro_t
__ZL19transcribeProtocolsP10objc_classP15glue_class_ro_t
__ZL20transcribePropertiesP10objc_classP15glue_class_ro_t
__ZL14initialize_impP11objc_objectP13objc_selector
__ZL18allocateMaybeSwiftP18glue_swift_class_tm
__ZL22copySwiftV1MangledNamePKcb
__ZL13demangledNamePKcb
__ZL16scanMangledFieldRPKcS0_S1_Ri
__ZL30arclite_uninitialized_functionv
__ZL12cxxConstructP11objc_object
__ZL20fixStringForCoreDataP11objc_object
_OBJC_METACLASS_$___ARCLite__
__ZL24OBJC_CLASS_$___ARCLite__
__ZL31OBJC_METACLASS_RO_$___ARCLite__
__non_lazy_classes
__ZL27OBJC_CLASS_RO_$___ARCLite__
__ZL11_class_name
__ZL32OBJC_$_CLASS_METHODS___ARCLite__
__ZL17_load_method_name
__ZL17_load_method_type
__OBJC_PROTOCOL_$___ARCLiteKeyedSubscripting__
__OBJC_LABEL_PROTOCOL_$___ARCLiteKeyedSubscripting__
l_OBJC_PROTOCOL_REFERENCE_$___ARCLiteKeyedSubscripting__
__ZL30NSUndoManagerProxy_targetClass
__ZL29original_NSManagedObject_init
__ZL40original_NSManagedObject_allocWithEntity
__ZL35original_NSManagedObject_allocBatch
__ZL25NSMutableDictionary_class
__ZL22NSConstantString_class
__ZL14NSString_class
__ZL36original_NSKKMS_fastIndexForKnownKey
__ZL27original_NSKKMS_indexForKey
__ZL28original_NSKKsD_objectForKey
__ZL34original_NSKKsD_removeObjectForKey
__ZL32original_NSKKsD_setObject_forKey
__ZL40original_NSKKsD_addEntriesFromDictionary
__ZZL22add_image_hook_swiftV1PK11mach_headerlE7patches
__ZGVZL22add_image_hook_swiftV1PK11mach_headerlE7patches
__ZL31original_objc_allocateClassPair
__ZL31original_object_getIndexedIvars
__ZL22original_objc_getClass
__ZL26original_objc_getMetaClass
__ZL30original_objc_getRequiredClass
__ZL25original_objc_lookUpClass
__ZL25original_objc_getProtocol
__ZL22original_class_getName
__ZL25original_protocol_getName
__ZL36original_objc_copyClassNamesForImage
__ZL12demangleLock
__ZL9Demangled
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c++ --target=arm64-apple-ios4.3 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=c++11 -Wno-trigraphs -fno-exceptions -fno-rtti -fno-sanitize=vptr -mpascal-strings -Os -Wno-missing-field-initializers -Wmissing-prototypes -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wno-non-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wno-missing-braces -Wparentheses -Wswitch -Wno-unused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-float-conversion -Wno-non-literal-null-conversion -Wno-objc-literal-conversion -Wshorten-64-to-32 -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -Wno-c++11-extensions -D NDEBUG=1 -D OBJC_OLD_DISPATCH_PROTOTYPES=1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -Winvalid-offsetof -g -fno-threadsafe-statics -Wno-sign-conversion -Wno-infinite-recursion -Wno-move -Wno-comma -Wno-block-capture-autoreleasing -Wno-strict-prototypes -Wno-range-loop-analysis -Wno-semicolon-before-method-body -fembed-bitcode=all -iquote /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-generated-files.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-own-target-headers.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-all-target-headers.hmap -iquote /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/arclite_iphoneos-project-headers.hmap -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/Symbols/BuiltProducts/include -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources-normal/arm64 -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources/arm64 -I /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/DerivedSources -F/Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/Symbols/BuiltProducts -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk/System/Library/PrivateFrameworks -Wall -Wextra -Wno-gcc-compat -Wno-error=incomplete-umbrella -Wno-error=invalid-ios-deployment-target -Wno-error=deprecated-declarations -Wno-error=documentation -Wno-error=incomplete-umbrella -Wno-error=invalid-ios-deployment-target -Wno-error=deprecated-declarations -Wno-error=documentation -MMD -MT dependencies -MF /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/arm64/arclite.d --serialize-diagnostics /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/arm64/arclite.dia -c /Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76/source/arclite.mm -o /Library/Caches/com.apple.xbs/Binaries/arclite_iOS/install/TempContent/Objects/arclite.build/arclite_iOS.build/Objects-normal/arm64/arclite.o -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4
/Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76/source/arclite.mm
/Library/Caches/com.apple.xbs/Sources/arclite_iOS/arclite-76
fixStringForCoreData
source/arclite.mm
cxxConstruct
arclite_uninitialized_function
scanMangledField
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.Internal.sdk/usr/include/_ctype.h
__isctype
demangledName
copySwiftV1DemangledName
copySwiftV1MangledName
allocateMaybeSwift
word_align
isSwift
initialize_imp
transcribeProperties
property_list_nth
transcribeProtocols
transcribeMethods
data
method_list_nth
__arclite_objc_copyClassNamesForImage
__arclite_protocol_getName
__arclite_class_getName
__arclite_objc_getProtocol
__arclite_objc_lookUpClass
__arclite_objc_getRequiredClass
__arclite_objc_getMetaClass
__arclite_objc_getClass
__arclite_object_getIndexedIvars
__arclite_objc_allocateClassPair
metaclass
__arclite_objc_readClassPair
transcribeIvars
ivar_list_nth
max
alignment
ro
fastFlags
__arclite_NSKKsD_addEntriesFromDictionary
__arclite_NSKKsD_setObject_forKey
__arclite_NSKKsD_removeObjectForKey
__arclite_NSKKsD_objectForKey
__arclite_NSKKMS_indexForKey
__arclite_NSKKMS_fastIndexForKnownKey
__arclite_NSManagedObject_allocBatch
__arclite_NSManagedObject_allocWithEntity
__arclite_NSManagedObject_init
__arclite_NSUndoManagerProxy_isKindOfClass
add_image_hook_swiftV1
patch_lazy_pointers
patch_t<const char **(const char *, unsigned int *)>
patch_t<const char *(Protocol *)>
patch_t<const char *(Class)>
patch_t<Protocol *(const char *)>
patch_t<Class (const char *)>
patch_t<void *(id)>
patch_t<Class (Class, const char *, unsigned long)>
patch_t<Class (Class, const objc_image_info *)>
__arclite_NSMutableDictionary__setObject_forKeyedSubscript
__ARCLite__load
install_swiftV1
replaceMethod
install_dict_nil_value
addOrReplaceMethod
keyedGetter
_swift_getFunctionReplacement50
_swift_getOrigOfReplaceable50
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/CompatibilityDynamicReplacements -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibilityDynamicReplacements -fembed-bitcode=all --target=arm64-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch arm64 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-arm64.dir/DynamicReplaceable.cpp.o -MF stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-arm64.dir/DynamicReplaceable.cpp.o.d -o stdlib/toolchain/CompatibilityDynamicReplacements/CMakeFiles/swiftCompatibilityDynamicReplacements-iphoneos-arm64.dir/DynamicReplaceable.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/swift-macosx-x86_64
swift_getOrigOfReplaceable50
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/CompatibilityDynamicReplacements/DynamicReplaceable.cpp
/BuildRoot/Library/Caches/com.apple.xbs
swift_getFunctionReplacement50
__ZN5swift17getRootSuperclassEv
__ZN5swift34swift50override_conformsToProtocolEPKNS_14TargetMetadataINS_9InProcessEEEPKNS_24TargetProtocolDescriptorIS1_EEPFPKNS_18TargetWitnessTableIS1_EES4_S8_E
__ZL24registerAddImageCallbackPv
__ZZZN5swift17getRootSuperclassEvENK3$_0clEvENUlPvE_8__invokeES1_
__ZL16addImageCallbackPK11mach_headerl
__ZZN5swift34swift50override_conformsToProtocolEPKNS_14TargetMetadataINS_9InProcessEEEPKNS_24TargetProtocolDescriptorIS1_EEPFPKNS_18TargetWitnessTableIS1_EES4_S8_EE5token
__ZZZN5swift17getRootSuperclassEvENK3$_0clEvE7TheLazy
__ZL27ProtocolConformancesSection
_DummyTargetContextDescriptor
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/Compatibility50 -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50 -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibility50 -fembed-bitcode=all --target=arm64-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch arm64 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/ProtocolConformance.cpp.o -MF stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/ProtocolConformance.cpp.o.d -o stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/ProtocolConformance.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp
addImageCallback
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/ProtocolConformance.cpp
_getTypeDescriptorLocation
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/ABI/Metadata.h
get
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/Basic/RelativePointer.h
getTypeKind
getTypeReferenceKind
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/ABI/MetadataValues.h
applyRelativeOffset<const swift::RelativeDirectPointerImpl<swift::TargetProtocolConformanceDescriptor<swift::InProcess>, false, int>, int>
__invoke
operator()
registerAddImageCallback
swift50override_conformsToProtocol
_swift50override_class_getSuperclass
getMetadataForClass
Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/../../public/runtime/Private.h
dyn_cast<swift::TargetForeignClassMetadata<swift::InProcess>, const swift::TargetMetadata<swift::InProcess> >
Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include/llvm/Support/Casting.h
isa<swift::TargetForeignClassMetadata<swift::InProcess>, const swift::TargetMetadata<swift::InProcess> *>
doit
classof
getKind
getEnumeratedMetadataKind
classHasSuperclass
getClassObject
CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/usr/include/dispatch/once.h
/BuildRoot
getRootSuperclass
Sources/swiftlang/swiftlang-1100.0.270.13/swift/include/swift/Basic/Lazy.h
_Overrides
/BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/bin/clang-11 --driver-mode=g++ -D CMARK_STATIC_DEFINE -D GTEST_HAS_RTTI=0 -D __STDC_CONSTANT_MACROS -D __STDC_FORMAT_MACROS -D __STDC_LIMIT_MACROS -I stdlib/toolchain/Compatibility50 -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50 -I include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/llvm/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/llvm-macosx-x86_64/tools/clang/include -I /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/cmark/src -I /BuildRoot/Library/Caches/com.apple.xbs/Binaries/swiftlang/install/TempContent/Objects/BNI_assert_lightweight/cmark-macosx-x86_64/src -Wno-unknown-warning-option -Werror=unguarded-availability-new -fno-stack-protector -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-class-memaccess -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Werror=switch -Wdocumentation -Wimplicit-fallthrough -Wunreachable-code -Woverloaded-virtual -D OBJC_OLD_DISPATCH_PROTOTYPES=0 -fno-sanitize=all -D LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING=1 -O2 -D NDEBUG -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -fno-exceptions -fno-rtti -Wall -Wglobal-constructors -Wexit-time-destructors -fvisibility=hidden -Wall -D SWIFT_TARGET_LIBRARY_NAME=swiftCompatibility50 -fembed-bitcode=all --target=arm64-apple-ios7.0 -isysroot /BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk -arch arm64 -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/Library/Frameworks -F/BuildRoot/CrossTrain_SwiftOverlays/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.0.sdk/../../../Developer/AppleInternal/Library/Frameworks -miphoneos-version-min=7.0 -O2 -g -D NDEBUG -MD -MT stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/Overrides.cpp.o -MF stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/Overrides.cpp.o.d -o stdlib/toolchain/Compatibility50/CMakeFiles/swiftCompatibility50-iphoneos-arm64.dir/Overrides.cpp.o -c /BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/Overrides.cpp -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -mlinker-version=512.4 -stdlib=libc++
/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-1100.0.270.13/swift/stdlib/toolchain/Compatibility50/Overrides.cpp

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.io.rx.RxBlocking</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>5.0.1</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

View File

@ -0,0 +1,876 @@
#ifndef TARGET_OS_SIMULATOR
#include <TargetConditionals.h>
#endif
#if TARGET_OS_SIMULATOR
#if 0
#elif defined(__x86_64__) && __x86_64__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxBlocking",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC10RxBlocking9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#elif defined(__i386__) && __i386__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxBlocking",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC10RxBlocking9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#endif
#else
#if 0
#elif defined(__arm64__) && __arm64__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxBlocking",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC10RxBlocking9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#elif defined(__ARM_ARCH_7A__) && __ARM_ARCH_7A__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxBlocking",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC10RxBlocking9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#endif
#endif

Binary file not shown.

View File

@ -0,0 +1,4 @@
framework module RxBlocking {
header "RxBlocking-Swift.h"
requires objc
}

Binary file not shown.

View File

@ -0,0 +1,55 @@
import Basic
import Foundation
import TuistCore
import XCTest
@testable import TuistCoreTesting
@testable import TuistGenerator
final class EmbedScriptGeneratorIntegrationTests: TuistTestCase {
var subject: EmbedScriptGenerator!
override func setUp() {
super.setUp()
subject = EmbedScriptGenerator()
}
override func tearDown() {
super.tearDown()
subject = nil
}
func test_script() throws {
// Given
let carthagePath = temporaryFixture("Carthage/")
let frameworkPath = FileHandler.shared.glob(carthagePath, glob: "*.framework").first!
let framework = FrameworkNode(path: frameworkPath)
// When
let got = try subject.script(sourceRootPath: carthagePath, frameworkPaths: [framework.path])
// Then
XCTAssertTrue(got.inputPaths.contains(RelativePath("2510FE01-4D40-3956-BB71-857D3B2D9E73.bcsymbolmap")))
XCTAssertTrue(got.inputPaths.contains(RelativePath("773847A9-0D05-35AF-9865-94A9A670080B.bcsymbolmap")))
XCTAssertTrue(got.inputPaths.contains(RelativePath("RxBlocking.framework")))
XCTAssertTrue(got.inputPaths.contains(RelativePath("RxBlocking.framework.dSYM")))
XCTAssertTrue(got.outputPaths.contains("${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxBlocking.framework"))
XCTAssertTrue(got.outputPaths.contains("${DWARF_DSYM_FOLDER_PATH}/RxBlocking.framework.dSYM"))
XCTAssertTrue(got.outputPaths.contains("${BUILT_PRODUCTS_DIR}/2510FE01-4D40-3956-BB71-857D3B2D9E73.bcsymbolmap"))
XCTAssertTrue(got.outputPaths.contains("${BUILT_PRODUCTS_DIR}/773847A9-0D05-35AF-9865-94A9A670080B.bcsymbolmap"))
XCTAssertTrue(got.script.contains("install_framework \"RxBlocking.framework\""))
XCTAssertTrue(got.script.contains("install_dsym \"RxBlocking.framework.dSYM\""))
XCTAssertTrue(got.script.contains("install_bcsymbolmap \"2510FE01-4D40-3956-BB71-857D3B2D9E73.bcsymbolmap\""))
XCTAssertTrue(got.script.contains("install_bcsymbolmap \"773847A9-0D05-35AF-9865-94A9A670080B.bcsymbolmap\""))
}
fileprivate func temporaryFixture(_ pathString: String) -> AbsolutePath {
let path = RelativePath(pathString)
let fixturePath = self.fixturePath(path: path)
let destinationPath = (try! temporaryPath()).appending(component: path.basename)
try! FileHandler.shared.copy(from: fixturePath, to: destinationPath)
return destinationPath
}
}

View File

@ -0,0 +1,58 @@
import Basic
import Foundation
import TuistCore
import XCTest
@testable import TuistCoreTesting
@testable import TuistGenerator
final class FrameworkMetadataProviderIntegrationTests: TuistTestCase {
var subject: FrameworkMetadataProvider!
override func setUp() {
super.setUp()
subject = FrameworkMetadataProvider()
}
override func tearDown() {
subject = nil
super.tearDown()
}
func test_bcsymbolmapPaths() throws {
// Given
let carthagePath = temporaryFixture("Carthage/")
let frameworkPath = FileHandler.shared.glob(carthagePath, glob: "*.framework").first!
let framework = FrameworkNode(path: frameworkPath)
// When
let got = try subject.bcsymbolmapPaths(framework: framework).sorted()
// Then
XCTAssertEqual(got, [
carthagePath.appending(component: "2510FE01-4D40-3956-BB71-857D3B2D9E73.bcsymbolmap"),
carthagePath.appending(component: "773847A9-0D05-35AF-9865-94A9A670080B.bcsymbolmap"),
])
}
func test_dsymPath() throws {
// Given
let carthagePath = temporaryFixture("Carthage/")
let frameworkPath = FileHandler.shared.glob(carthagePath, glob: "*.framework").first!
let framework = FrameworkNode(path: frameworkPath)
// When
let got = subject.dsymPath(framework: framework)
// Then
XCTAssertTrue(got == carthagePath.appending(component: "\(frameworkPath.basename).dSYM"))
}
fileprivate func temporaryFixture(_ pathString: String) -> AbsolutePath {
let path = RelativePath(pathString)
let fixturePath = self.fixturePath(path: path)
let destinationPath = (try! temporaryPath()).appending(component: path.basename)
try! FileHandler.shared.copy(from: fixturePath, to: destinationPath)
return destinationPath
}
}

View File

@ -0,0 +1,57 @@
import Basic
import Foundation
import TuistCore
import XCTest
@testable import TuistCoreTesting
@testable import TuistGenerator
final class PrecompiledMetadataProviderIntegrationTests: TuistTestCase {
var subject: PrecompiledMetadataProvider!
override func setUp() {
super.setUp()
subject = PrecompiledMetadataProvider()
}
override func tearDown() {
subject = nil
super.tearDown()
}
func test_architectures() throws {
// Given
let frameworkPath = temporaryFixture("xpm.framework")
let framework = FrameworkNode(path: frameworkPath)
// When
let got = try subject.architectures(precompiled: framework)
// Then
XCTAssertEqual(got.map(\.rawValue).sorted(), ["arm64", "x86_64"])
}
func test_uuids() throws {
// Given
let frameworkPath = temporaryFixture("xpm.framework")
let framework = FrameworkNode(path: frameworkPath)
// When
let got = try subject.uuids(precompiled: framework)
// Then
let expected = Set([
UUID(uuidString: "FB17107A-86FA-3880-92AC-C9AA9E04BA98"),
UUID(uuidString: "510FD121-B669-3524-A748-2DDF357A051C"),
])
XCTAssertEqual(got, expected)
}
fileprivate func temporaryFixture(_ pathString: String) -> AbsolutePath {
let path = RelativePath(pathString)
let fixturePath = self.fixturePath(path: path)
let destinationPath = (try! temporaryPath()).appending(component: path.basename)
try! FileHandler.shared.copy(from: fixturePath, to: destinationPath)
return destinationPath
}
}

View File

@ -5,11 +5,19 @@ import XCTest
@testable import TuistGenerator
final class LinkGeneratorErrorTests: XCTestCase {
var embedScriptGenerator: MockEmbedScriptGenerator!
var subject: LinkGenerator!
override func setUp() {
super.setUp()
subject = LinkGenerator()
embedScriptGenerator = MockEmbedScriptGenerator()
subject = LinkGenerator(embedScriptGenerator: embedScriptGenerator)
}
override func tearDown() {
subject = nil
embedScriptGenerator = nil
super.tearDown()
}
func test_linkGeneratorError_description() {
@ -25,6 +33,7 @@ final class LinkGeneratorErrorTests: XCTestCase {
}
func test_generateEmbedPhase() throws {
// Given
var dependencies: [DependencyReference] = []
dependencies.append(DependencyReference.absolute(AbsolutePath("/test.framework")))
dependencies.append(DependencyReference.product(target: "Test", productName: "Test.framework"))
@ -35,18 +44,23 @@ final class LinkGeneratorErrorTests: XCTestCase {
pbxproj.add(object: wakaFile)
fileElements.products["Test"] = wakaFile
let sourceRootPath = AbsolutePath("/")
embedScriptGenerator.scriptStub = .success(EmbedScript(script: "script",
inputPaths: [RelativePath("frameworks/A.framework")],
outputPaths: ["output/A.framework"]))
// When
try subject.generateEmbedPhase(dependencies: dependencies,
pbxTarget: pbxTarget,
pbxproj: pbxproj,
fileElements: fileElements,
sourceRootPath: sourceRootPath)
// Then
let scriptBuildPhase: PBXShellScriptBuildPhase? = pbxTarget.buildPhases.first as? PBXShellScriptBuildPhase
XCTAssertEqual(scriptBuildPhase?.name, "Embed Precompiled Frameworks")
XCTAssertEqual(scriptBuildPhase?.shellScript, "tuist embed test.framework")
XCTAssertEqual(scriptBuildPhase?.inputPaths, ["$(SRCROOT)/test.framework"])
XCTAssertEqual(scriptBuildPhase?.outputPaths, ["$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/test.framework"])
XCTAssertEqual(scriptBuildPhase?.shellScript, "script")
XCTAssertEqual(scriptBuildPhase?.inputPaths, ["frameworks/A.framework"])
XCTAssertEqual(scriptBuildPhase?.outputPaths, ["output/A.framework"])
let copyBuildPhase: PBXCopyFilesBuildPhase? = pbxTarget.buildPhases.last as? PBXCopyFilesBuildPhase
XCTAssertEqual(copyBuildPhase?.name, "Embed Frameworks")

View File

@ -36,25 +36,6 @@ final class FrameworkNodeTests: TuistUnitTestCase {
XCTAssertTrue(subject.isCarthage)
}
func test_architectures_when_nonFatFramework() throws {
system.succeedCommand("/usr/bin/lipo -info /test.framework/test",
output: "Non-fat file: path is architecture: x86_64")
try XCTAssertEqual(subject.architectures().first, .x8664)
}
func test_architectures_when_fatFramework() throws {
system.succeedCommand("/usr/bin/lipo -info /test.framework/test",
output: "Architectures in the fat file: /path/xpm.framework/xpm are: x86_64 arm64")
try XCTAssertTrue(subject.architectures().contains(.x8664))
try XCTAssertTrue(subject.architectures().contains(.arm64))
}
func test_linking() {
system.succeedCommand("/usr/bin/file", "/test.framework/test",
output: "whatever dynamically linked")
try XCTAssertEqual(subject.linking(), .dynamic)
}
func test_encode() {
// Given
System.shared = System()

View File

@ -30,16 +30,6 @@ final class LibraryNodeTests: TuistUnitTestCase {
XCTAssertEqual(subject.binaryPath.pathString, "/test.a")
}
func test_architectures() throws {
system.succeedCommand("/usr/bin/lipo", "-info", "/test.a", output: "Non-fat file: path is architecture: x86_64")
try XCTAssertEqual(subject.architectures().first, .x8664)
}
func test_linking() {
system.succeedCommand("/usr/bin/file", "/test.a", output: "whatever dynamically linked")
try XCTAssertEqual(subject.linking(), .dynamic)
}
func test_equality() {
// Given
let a1 = LibraryNode(path: "/a", publicHeaders: "/a/header", swiftModuleMap: "/a/swiftmodulemap")

View File

@ -13,13 +13,6 @@ final class PrecompiledNodeTests: XCTestCase {
system = MockSystem()
}
func test_architecture_rawValues() {
XCTAssertEqual(PrecompiledNode.Architecture.x8664.rawValue, "x86_64")
XCTAssertEqual(PrecompiledNode.Architecture.i386.rawValue, "i386")
XCTAssertEqual(PrecompiledNode.Architecture.armv7.rawValue, "armv7")
XCTAssertEqual(PrecompiledNode.Architecture.armv7s.rawValue, "armv7s")
}
func test_name() {
// Given
let subject = PrecompiledNode(path: AbsolutePath("/Alamofire.framework"))

View File

@ -0,0 +1,23 @@
import Basic
import Foundation
@testable import TuistCoreTesting
@testable import TuistGenerator
final class MockEmbedScriptGenerator: EmbedScriptGenerating {
var scriptArgs: [(AbsolutePath, [AbsolutePath])] = []
var scriptStub: Result<EmbedScript, Error>?
func script(sourceRootPath: AbsolutePath,
frameworkPaths: [AbsolutePath]) throws -> EmbedScript {
scriptArgs.append((sourceRootPath, frameworkPaths))
if let scriptStub = scriptStub {
switch scriptStub {
case let .failure(error): throw error
case let .success(script): return script
}
} else {
throw TestError("call to embed script generator not mocked")
}
}
}

View File

@ -0,0 +1,52 @@
import Basic
import Foundation
import TuistCore
import XCTest
@testable import TuistCoreTesting
@testable import TuistGenerator
final class BinaryArchitectureTests: TuistTestCase {
func test_rawValue() {
XCTAssertEqual(BinaryArchitecture.x8664.rawValue, "x86_64")
XCTAssertEqual(BinaryArchitecture.i386.rawValue, "i386")
XCTAssertEqual(BinaryArchitecture.armv7.rawValue, "armv7")
XCTAssertEqual(BinaryArchitecture.armv7s.rawValue, "armv7s")
}
}
final class PrecompiledMetadataProviderTests: TuistUnitTestCase {
var subject: PrecompiledMetadataProvider!
override func setUp() {
super.setUp()
subject = PrecompiledMetadataProvider()
}
override func tearDown() {
subject = nil
super.tearDown()
}
func test_architectures() throws {
// Given
system.succeedCommand("/usr/bin/lipo", "-info", "/test.a", output: "Non-fat file: path is architecture: x86_64")
// When
let got = try subject.architectures(binaryPath: AbsolutePath("/test.a"))
// Then
XCTAssertEqual(got.first, .x8664)
}
func test_linking() throws {
// Given
system.succeedCommand("/usr/bin/file", "/test.a", output: "whatever dynamically linked")
// When
let got = try subject.linking(binaryPath: AbsolutePath("/test.a"))
// Then
XCTAssertEqual(got, .dynamic)
}
}

View File

@ -1,84 +0,0 @@
import Basic
import Foundation
import XCTest
@testable import TuistCoreTesting
@testable import TuistKit
final class FrameworkEmbedderIntegrationTests: TuistTestCase {
var subject: FrameworkEmbedder!
var fm: FileManager!
override func setUp() {
super.setUp()
subject = FrameworkEmbedder()
fm = FileManager.default
}
override func tearDown() {
subject = nil
fm = nil
super.tearDown()
}
func test_embed_when_actionIsInstall() throws {
try withEnvironment(action: .install) { srcRoot, env in
let frameworkPath = universalFrameworkPath().relative(to: srcRoot)
try subject.embed(frameworkPath: frameworkPath,
environment: env)
let outputFrameworkPath = srcRoot.appending(RelativePath("built_products_dir/frameworks/xpm.framework"))
let outputDSYMPath = srcRoot.appending(RelativePath("built_products_dir/xpm.framework.dSYM"))
XCTAssertTrue(fm.fileExists(atPath: outputFrameworkPath.pathString))
XCTAssertTrue(fm.fileExists(atPath: outputDSYMPath.pathString))
XCTAssertEqual(try Embeddable(path: outputFrameworkPath).architectures(), ["arm64"])
XCTAssertEqual(try Embeddable(path: outputDSYMPath).architectures(), ["arm64"])
}
}
func test_embed_when_actionIsNotInstall() throws {
try withEnvironment(action: .build) { srcRoot, env in
let frameworkPath = universalFrameworkPath().relative(to: srcRoot)
try subject.embed(frameworkPath: frameworkPath,
environment: env)
let outputFrameworkPath = srcRoot.appending(RelativePath("target_build_dir/frameworks/xpm.framework"))
let outputDSYMPath = srcRoot.appending(RelativePath("target_build_dir/xpm.framework.dSYM"))
XCTAssertTrue(fm.fileExists(atPath: outputFrameworkPath.pathString))
XCTAssertTrue(fm.fileExists(atPath: outputDSYMPath.pathString))
XCTAssertEqual(try Embeddable(path: outputFrameworkPath).architectures(), ["arm64"])
XCTAssertEqual(try Embeddable(path: outputDSYMPath).architectures(), ["arm64"])
}
}
private func universalFrameworkPath() -> AbsolutePath {
let testsPath = AbsolutePath(#file).parentDirectory.parentDirectory.parentDirectory
return testsPath.appending(RelativePath("Fixtures/xpm.framework"))
}
private func withEnvironment(action: XcodeBuild.Action = .install,
codeSigningIdentity: String? = nil,
assert: (AbsolutePath, XcodeBuild.Environment) throws -> Void) throws {
let tmpDir = try TemporaryDirectory(removeTreeOnDeinit: true)
let frameworksPath = "frameworks"
let srcRootPath = tmpDir.path
let builtProductsDir = tmpDir.path.appending(component: "built_products_dir")
let targetBuildDir = tmpDir.path.appending(component: "target_build_dir")
let validArchs = ["arm64"]
func createDirectory(path: AbsolutePath) throws {
try FileManager.default.createDirectory(atPath: path.pathString,
withIntermediateDirectories: true,
attributes: nil)
}
try createDirectory(path: srcRootPath)
try createDirectory(path: builtProductsDir)
try createDirectory(path: targetBuildDir)
let environment = XcodeBuild.Environment(configuration: "Debug",
frameworksFolderPath: frameworksPath,
builtProductsDir: builtProductsDir.pathString,
targetBuildDir: targetBuildDir.pathString,
validArchs: validArchs,
srcRoot: srcRootPath.pathString,
action: action,
codeSigningIdentity: codeSigningIdentity,
codeSigningAllowed: true)
try assert(srcRootPath, environment)
}
}

View File

@ -1,151 +0,0 @@
import Basic
import Foundation
import XCTest
@testable import TuistKit
final class EmbeddableTests: XCTestCase {
var fm: FileManager!
override func setUp() {
super.setUp()
fm = FileManager.default
}
func test_embeddableError_type() {
XCTAssertEqual(EmbeddableError.missingBundleExecutable(AbsolutePath("/path")).type, .abort)
XCTAssertEqual(EmbeddableError.unstrippableNonFatEmbeddable(AbsolutePath("/path")).type, .abort)
}
func test_embeddableError_description() {
XCTAssertEqual(EmbeddableError.missingBundleExecutable(AbsolutePath("/path")).description, "Couldn't find executable in bundle at path /path")
XCTAssertEqual(EmbeddableError.unstrippableNonFatEmbeddable(AbsolutePath("/path")).description, "Can't strip architectures from the non-fat package at path /path")
}
func test_embeddableType() {
XCTAssertEqual(EmbeddableType.framework.rawValue, "FMWK")
XCTAssertEqual(EmbeddableType.bundle.rawValue, "BNDL")
XCTAssertEqual(EmbeddableType.dSYM.rawValue, "dSYM")
}
func test_constants() {
XCTAssertEqual(Embeddable.Constants.lipoArchitecturesMessage, "Architectures in the fat file:")
XCTAssertEqual(Embeddable.Constants.lipoNonFatFileMessage, "Non-fat file:")
}
func test_binaryPath_whenFramework() throws {
try withUniversalFramework {
let name = $0.path.components.last!.split(separator: ".").first!
let expected = $0.path.appending(component: String(name))
try XCTAssertEqual($0.binaryPath(), expected)
}
}
func test_binaryPath_whenDSYM() throws {
try withDSYM {
let expected = $0.path.appending(RelativePath("Contents/Resources/DWARF/xpm"))
try XCTAssertEqual($0.binaryPath(), expected)
}
}
func test_packageType_whenFramework() throws {
try withUniversalFramework {
XCTAssertEqual($0.packageType(), .framework)
}
}
func test_packageType_whenDSYM() throws {
try withDSYM {
XCTAssertEqual($0.packageType(), .dSYM)
}
}
func test_architectures_whenFramework() throws {
try withUniversalFramework {
// The fixture framework is a universal framework.
try XCTAssertEqual($0.architectures(), ["x86_64", "arm64"])
}
}
func test_architectures_whenDSYM() throws {
try withDSYM {
// The fixture dSYM was compiled for the simulator architecture.
try XCTAssertEqual($0.architectures(), ["arm64"])
}
}
func test_strip_whenFramework() throws {
try withUniversalFramework {
XCTAssertTrue(fm.fileExists(atPath: $0.path.appending(component: "Headers").pathString))
XCTAssertTrue(fm.fileExists(atPath: $0.path.appending(component: "PrivateHeaders").pathString))
XCTAssertTrue(fm.fileExists(atPath: $0.path.appending(component: "Modules").pathString))
try XCTAssertEqual($0.architectures(), ["x86_64", "arm64"])
try $0.strip(keepingArchitectures: ["x86_64"])
try XCTAssertEqual($0.architectures(), ["x86_64"])
XCTAssertFalse(fm.fileExists(atPath: $0.path.appending(component: "Headers").pathString))
XCTAssertFalse(fm.fileExists(atPath: $0.path.appending(component: "PrivateHeaders").pathString))
XCTAssertFalse(fm.fileExists(atPath: $0.path.appending(component: "Modules").pathString))
}
}
func test_strip_throws() throws {
try withDSYM {
let path = $0.path
XCTAssertThrowsSpecific(try $0.strip(keepingArchitectures: []),
EmbeddableError.unstrippableNonFatEmbeddable(path))
}
}
func test_uuids_whenFramework() throws {
try withUniversalFramework {
let expected: Set<UUID> = Set(arrayLiteral: UUID(uuidString: "FB17107A-86FA-3880-92AC-C9AA9E04BA98")!,
UUID(uuidString: "510FD121-B669-3524-A748-2DDF357A051C")!)
try XCTAssertEqual($0.uuids(), expected)
}
}
func test_uuids_whensDSYM() throws {
try withDSYM {
let expected: Set<UUID> = Set(arrayLiteral: UUID(uuidString: "FB17107A-86FA-3880-92AC-C9AA9E04BA98")!)
try XCTAssertEqual($0.uuids(), expected)
}
}
func test_bcSymbolMapsForFramework() throws {
try withUniversalFramework {
let path = $0.path
var symbolMapsPaths: [AbsolutePath] = []
try $0.uuids().forEach {
let symbolMapPath = path.parentDirectory.appending(component: "\($0.uuidString).bcsymbolmap")
symbolMapsPaths.append(symbolMapPath)
fm.createFile(atPath: symbolMapPath.pathString,
contents: nil,
attributes: [:])
}
try XCTAssertEqual($0.bcSymbolMapsForFramework().sorted(), symbolMapsPaths.sorted())
}
}
private func withUniversalFramework(action: (Embeddable) throws -> Void) throws {
let tmpDir = try TemporaryDirectory(removeTreeOnDeinit: true)
let testsPath = AbsolutePath(#file).parentDirectory.parentDirectory.parentDirectory
let frameworkPath = testsPath.appending(RelativePath("Fixtures/xpm.framework"))
let frameworkTmpPath = tmpDir.path.appending(component: "xpm.framework")
try fm.copyItem(atPath: frameworkPath.pathString,
toPath: frameworkTmpPath.pathString)
let embeddable = Embeddable(path: frameworkTmpPath)
try action(embeddable)
}
private func withDSYM(action: (Embeddable) throws -> Void) throws {
let tmpDir = try TemporaryDirectory(removeTreeOnDeinit: true)
let testsPath = AbsolutePath(#file).parentDirectory.parentDirectory.parentDirectory
let frameworkPath = testsPath.appending(RelativePath("Fixtures/xpm.framework.dSYM"))
let frameworkTmpPath = tmpDir.path.appending(component: "xpm.framework.dSYM")
try fm.copyItem(atPath: frameworkPath.pathString,
toPath: frameworkTmpPath.pathString)
let embeddable = Embeddable(path: frameworkTmpPath)
try action(embeddable)
}
}

View File

@ -1,86 +0,0 @@
import Basic
import Foundation
import XCTest
@testable import TuistCoreTesting
@testable import TuistKit
final class FrameworkEmbedderTests: TuistUnitTestCase {
var subject: FrameworkEmbedder!
var fm: FileManager!
override func setUp() {
super.setUp()
subject = FrameworkEmbedder()
fm = FileManager.default
}
override func tearDown() {
subject = nil
fm = nil
super.tearDown()
}
func test_embed_with_codesigning() throws {
XCTAssertNoThrow(try withEnvironment(codeSigningIdentity: "iPhone Developer") { srcRoot, env in
let frameworkPath = universalFrameworkPath().relative(to: srcRoot)
let binPath = env.frameworksPath().appending(RelativePath("xpm.framework/xpm"))
system.succeedCommand([
"/usr/bin/lipo", "-info", universalFrameworkPath().appending(component: "xpm").pathString,
], output: "Architectures in the fat file: \(binPath) are: x86_64 arm64")
system.succeedCommand([
"/usr/bin/xcrun",
"codesign", "--force", "--sign", "iPhone Developer", "--preserve-metadata=identifier,entitlements", env.frameworksPath().appending(.init("xpm.framework")).pathString,
])
try subject.embed(frameworkPath: frameworkPath, environment: env)
})
}
func test_embed_with_no_codesigning() {
XCTAssertNoThrow(try withEnvironment(codeSigningIdentity: nil) { srcRoot, env in
let frameworkPath = universalFrameworkPath().relative(to: srcRoot)
let binPath = env.frameworksPath().appending(RelativePath("xpm.framework/xpm"))
system.succeedCommand([
"/usr/bin/lipo", "-info", universalFrameworkPath().appending(component: "xpm").pathString,
], output: "Architectures in the fat file: \(binPath) are: x86_64 arm64")
try subject.embed(frameworkPath: frameworkPath, environment: env)
XCTAssertFalse(
system.called("/usr/bin/xcrun",
"codesign", "--force", "--sign", "iPhone Developer", "--preserve-metadata=identifier,entitlements", env.frameworksPath().appending(.init("xpm.framework")).pathString)
)
})
}
private func universalFrameworkPath() -> AbsolutePath {
let testsPath = AbsolutePath(#file).parentDirectory.parentDirectory.parentDirectory
return testsPath.appending(RelativePath("Fixtures/xpm.framework"))
}
private func withEnvironment(action: XcodeBuild.Action = .install,
codeSigningIdentity: String? = nil,
assert: (AbsolutePath, XcodeBuild.Environment) throws -> Void) throws {
let tmpDir = try TemporaryDirectory(removeTreeOnDeinit: true)
let frameworksPath = "frameworks"
let srcRootPath = tmpDir.path
let builtProductsDir = tmpDir.path.appending(component: "built_products_dir")
let targetBuildDir = tmpDir.path.appending(component: "target_build_dir")
let validArchs = ["arm64"]
func createDirectory(path: AbsolutePath) throws {
try FileManager.default.createDirectory(atPath: path.pathString,
withIntermediateDirectories: true,
attributes: nil)
}
try createDirectory(path: srcRootPath)
try createDirectory(path: builtProductsDir)
try createDirectory(path: targetBuildDir)
let environment = XcodeBuild.Environment(configuration: "Debug",
frameworksFolderPath: frameworksPath,
builtProductsDir: builtProductsDir.pathString,
targetBuildDir: targetBuildDir.pathString,
validArchs: validArchs,
srcRoot: srcRootPath.pathString,
action: action,
codeSigningIdentity: codeSigningIdentity,
codeSigningAllowed: true)
try assert(srcRootPath, environment)
}
}

View File

@ -1,4 +1,4 @@
Feature: The Tuist environment
Scenario: Installing tuist from source
Given that tuist is available
Then tuistenv should succeed in installing "master"
Then tuistenv should succeed in installing the latest version

View File

@ -209,3 +209,12 @@ Scenario: The project is an iOS application with remote Swift package (ios_app_w
Then tuist generates the project
Then I should be able to build for iOS the scheme App
Then I should be able to test for iOS the scheme AppTests
Scenario: The project is an iOS application with Carthage frameworks (ios_app_with_carthage_frameworks)
Given that tuist is available
And I have a working directory
Then I copy the fixture ios_app_with_carthage_frameworks into the working directory
Then tuist generates the project
Then I should be able to build for iOS the scheme App
Then the product 'App.app' with destination 'Debug-iphoneos' contains the framework 'RxSwift' without architecture 'armv7'
Then the product 'App.app' with destination 'Debug-iphoneos' contains the framework 'RxSwift' with architecture 'arm64'

View File

@ -32,6 +32,10 @@ Then(/tuist generate yields error "(.+)"/) do |error|
refute status.success?
end
Then(/tuistenv should succeed in installing "(.+)"/) do |ref|
system("swift", "run", "tuistenv", "install", ref)
Then(/tuistenv should succeed in installing the latest version/) do
constants_path = File.expand_path("../../../Sources/TuistCore/Constants.swift", __dir__)
# Matches: let version = "3.2.1"
version = File.read(constants_path).match(/let\sversion\s=\s\"(.+)\"/)[1].chomp
system("swift", "run", "tuistenv", "install", version)
end

View File

@ -260,3 +260,7 @@ Note: to re-create `PrebuiltStaticFramework.framework` run `fixtures/ios_app_wit
## ios_workspace_with_dependency_cycle
An example of a workspace that has a dependency cycle between targets in different projects.
## ios_app_with_carthage_frameworks
An example of an iOS app that contains Carthage frameworks \*(fat frameworks with device & simulators architectures)\*. This fixture is useful to test the script that embeds them stripping the architectures that are not necessary.

View File

@ -0,0 +1,6 @@
Derived
Carthage/Checkouts
!Carthage/Build/iOS/RxSwift.framework
!Carthage/Build/iOS/RxSwift.framework.dSYM
!Carthage/Build/iOS/747D1C31-2D46-3A6A-ACFF-58E03B51B873.bcsymbolmap
!Carthage/Build/iOS/CB76E288-9BE9-3CC8-B9F9-D31CDFA81028.bcsymbolmap

View File

@ -0,0 +1 @@
github "ReactiveX/RxSwift" ~> 5.0

View File

@ -0,0 +1 @@
github "ReactiveX/RxSwift" "5.0.1"

View File

@ -0,0 +1,30 @@
{
"commitish" : "5.0.1",
"iOS" : [
{
"name" : "RxRelay",
"hash" : "4dad73f682de61271d2685333869b95c5b7ca62a0e5f89564c8872618e912103",
"swiftToolchainVersion" : "5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)"
},
{
"name" : "RxTest",
"hash" : "0d08b9b9b66350db61f9770c9bfb12df8766dec78539d6d0ca61b393974a8c56",
"swiftToolchainVersion" : "5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)"
},
{
"name" : "RxBlocking",
"hash" : "a377a74a084e465406b1142064f17a51cd1ecb9cc3e39359abeaccb33e8d4b32",
"swiftToolchainVersion" : "5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)"
},
{
"name" : "RxCocoa",
"hash" : "950d9e621f8b7686db3521c7fc7f7e10b83ea5377bfe230ed2cc496de4fdd385",
"swiftToolchainVersion" : "5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)"
},
{
"name" : "RxSwift",
"hash" : "56e13ea42ce715a225777c91a51804331a5202f8dd9002256bc2e9884d317d6c",
"swiftToolchainVersion" : "5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)"
}
]
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.io.rx.RxSwift</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>5.0.1</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

View File

@ -0,0 +1,896 @@
#ifndef TARGET_OS_SIMULATOR
#include <TargetConditionals.h>
#endif
#if TARGET_OS_SIMULATOR
#if 0
#elif defined(__x86_64__) && __x86_64__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
@import ObjectiveC;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxSwift",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC7RxSwift9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#elif defined(__i386__) && __i386__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
@import ObjectiveC;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxSwift",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC7RxSwift9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#endif
#else
#if 0
#elif defined(__arm64__) && __arm64__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
@import ObjectiveC;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxSwift",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC7RxSwift9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#elif defined(__ARM_ARCH_7A__) && __ARM_ARCH_7A__
// Generated by Apple Swift version 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"
#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif
#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif
#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
# include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
#endif
#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
# define SWIFT_CLASS_PROPERTY(...)
# endif
#endif
#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif
#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif
#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
# define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
# define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import Foundation;
@import ObjectiveC;
#endif
#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"
#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="RxSwift",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif
SWIFT_CLASS("_TtC7RxSwift9AtomicInt")
@interface AtomicInt : NSLock
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end
#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#endif
#endif

View File

@ -0,0 +1,4 @@
framework module RxSwift {
header "RxSwift-Swift.h"
requires objc
}

Binary file not shown.

View File

@ -0,0 +1,15 @@
import ProjectDescription
let project = Project(name: "App",
targets: [
Target(name: "App",
platform: .iOS,
product: .app,
bundleId: "io.tuist.App",
infoPlist: .extendingDefault(with: [:]),
sources: "Sources/**",
resources: "Sources/Main.storyboard",
dependencies: [
.framework(path: "Carthage/Build/iOS/RxSwift.framework")
])
])

View File

@ -0,0 +1,11 @@
import UIKit
import RxSwift
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func applicationDidFinishLaunching(_: UIApplication) {
let observable = Observable<String>.just("hello world")
}
}

View File

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14868" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="T3K-U3-fqE">
<device id="retina6_1" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14824"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
<!--View Controller-->
<scene sceneID="Gdm-dU-Jdg">
<objects>
<viewController id="T3K-U3-fqE" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="C2z-Us-3Oq">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<viewLayoutGuide key="safeArea" id="u2Q-h0-IbQ"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="8m5-GG-jRv" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="184" y="-14"/>
</scene>
</scenes>
</document>

View File

@ -0,0 +1,7 @@
import ProjectDescription
let config = TuistConfig(
generationOptions: [
.generateManifest
]
)

View File

@ -16,7 +16,7 @@ gem('bootsnap', '>= 1.1.0', require: false)
gem('tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby])
gem("sentry-raven")
gem("sidekiq", "~> 6.0")
gem 'webpacker', '~> 4.x'
gem('webpacker', '~> 4.x')
group :development, :test do
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]

View File

@ -1,4 +1,5 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
ENV["NODE_ENV"] ||= "development"

View File

@ -1,4 +1,5 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
ENV["RAILS_ENV"] ||= ENV["RACK_ENV"] || "development"
ENV["NODE_ENV"] ||= "development"

View File

@ -36,7 +36,7 @@ module Galaxy
config.assets.compress = false
config.generators do |g|
g.assets false
g.assets(false)
end
end
end

View File

@ -1,3 +1,4 @@
# frozen_string_literal: true
# This file is auto-generated from the current state of the database. Instead
# of editing this file, please use the migrations feature of Active Record to
# incrementally modify your database, and then regenerate this schema definition.
@ -11,8 +12,6 @@
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 0) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
end