4
我有一個有趣的問題,涉及兩個不同的具有相同名稱的公共枚舉的Cocoapods。類名與命名空間問題相同
使用隱式命名空間這通常不是一個問題,除了兩個Cocoapods都有一個與它們的目標名稱相同的類。
因此,如果我將兩個Cocoapods導入到引用具有相同名稱的枚舉的同一個文件中,會生成一個「enum-name在此上下文中查找類型不明確」,並且如果我試圖通過ModuleName.enum引用枚舉Swift說ModuleName沒有名爲enum的成員。
大概這是因爲類,而不是名稱空間沒有名爲enum的成員。任何人都知道這個方法嗎?
這裏是這個樣子代碼:
Cocoapod答:
public enum Test {
}
public class A {
}
Cocoapod B:
public enum Test {
}
public class B {
}
其他文件:
import A
import B
// Results in "A does not have a member named Test"
var test: A.Test = A.Test(rawValue: "a")
// Results in "Test is ambiguous for type lookup in this context"
var test: Test = Test(rawValue: "a")