无法在单独的文件中扩展嵌套结构

and*_*ers 2 swift

我有两个文件,

父级.swift

enum Parent {
    ...
}
Run Code Online (Sandbox Code Playgroud)

儿童.swift

extension Parent {
    struct Child {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我可以像这样使用 child

let child = Parent.Child()
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何在单独的文件中编写 Child 的扩展名。

子+扩展.swift

extension Parent.Child {
    ...
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误,

“孩子”不是“家长”的成员类型

对于单独的文件来说这可能吗?我知道如果我将parent.swift和child.swift结合起来就会起作用。

and*_*ers 5

感谢哈米什在这里的回答,

这是一个 swift 编译器错误,如下所示:bugs.swift.org/browse/SR-631

解决方法是手动修改“编译源”,确保“Child+Extension.swift”位于“Child.swift”之后