For sure, because reaching out beyond Self
to enclosing types already works that way.
enum ReallyOutThere {
static func outerStaticMethod() { }
static func reallyOutThereMethod() { }
enum Outer {
static func outerStaticMethod() { }
struct Inner {
static func innerStaticMethod() { }
func instanceMethod() {
innerStaticMethod() // does not compile; requires `Self.`
outerStaticMethod() // compiles! Calls `Outer.outerStaticMethod`.
reallyOutThereMethod() // compiles!
}
}
}
}