Avatar
任意のenumがあるときに、特定のケースのassociatedvalueを取り出したい enum Some { case foo(Foo) case bars([Bar]) case piyoOrNil(Piyo?) } func getBars(from: Some) -> [Bar]? { /* ??? */ } このOptionalへの変換、サクッとする方法ないですよね、 if case .bars(let x) = from { return x } else { return nil } switch x { case .bars(let x): return x; default: return nil } ↑しかない。