Swift-如何确保即使类看起来未使用,也能编译它?

Swift-如何确保即使类看起来未使用,也能编译它?,swift,xcode,loading,compiler-optimization,xpc,Swift,Xcode,Loading,Compiler Optimization,Xpc,我的设置如下:我有一个带有自定义类Foo的app targetapp,用于协议的参数中,该协议用于通过XPC进行通信。App的AppDelegate实现此协议,例如: @objc(Foo) class Foo { ... } protocol XPCProtocol { func myFunc(foo: Foo) } class AppDelegate: NSApplicationDelegate, XPCProtocol { ... func myFunc(foo: Fo

我的设置如下:我有一个带有自定义类
Foo
的app target
app
,用于协议的参数中,该协议用于通过XPC进行通信。
App
的AppDelegate实现此协议,例如:

@objc(Foo) class Foo { ... }

protocol XPCProtocol {
   func myFunc(foo: Foo)
}

class AppDelegate: NSApplicationDelegate, XPCProtocol {
   ...
   func myFunc(foo: Foo) { ... }
}
在我的用例中,
myFunc
从不从我的应用目标
app
调用,而是通过XPC由另一个进程调用。然而,似乎因为
App
从不调用它,而且这是
Foo
的唯一用法,所以
Foo
类似乎没有被编译(每当我从另一个进程调用
myFunc
时,它都会说
Foo
没有加载或不存在)

进一步表明这是一个编译问题的事实是,如果我只是在
App
中的任何地方通过
let\uz=Foo()
实例化
Foo
,问题就会消失。然而,我更愿意避免用这种方式解决编译器问题

那么,有没有办法标记我的
Foo
类,以便编译器始终包含它?我已经在我的Xcode构建设置中关闭了Swift编译器优化,所以我不确定还能做什么