假设您只能看到"标题"对于一个名为VendingMachine的已编译的swift类。如下:
class VendingMachine {
func getFreeRandomSnack() throws -> Snack
}
您如何确定抛出错误的子类?
假设实现者使用以下子类来表示错误(但是您作为读者并不知道这一点):
enum VendingMachineError: Error {
case invalidSelection
case insufficientFunds(coinsNeeded: Int)
case outOfStock
}
没有内省,你怎么知道你能抓到什么?
如果必须使用内省,那么确定抛出可能的Error子类的详尽列表的最佳方法是什么?