강제로 마운트 해제해도 떨어지지 않는 맵 조작원을 만들었다(하지만...)

3331 단어 Swift
Fortify로 compoactMap을 만들면 편할 것 같아서 써봤어요.

SafeMap


사용 전

let paths = ["https://image.com", "", "あああ", "http://image.jp/"]
let medias = paths.compactMap({ (path) -> Media? in
  guard let url = URL(string: $0) else { return nil }
  return Media(url: url)
})
print(medias)

일단 사용하다

let paths = ["https://image.com", "", "あああ", "http://image.jp/"]
let medias = paths.safeMap({ Media(url: URL(string: $0)!) })
print(medias)
safemap 운영자 내에서 강제 마운트 해제에 실패하면 자동으로 맵의 대상에서 제거됩니다.

문제점


따라서 debug executable를 닫지 않으면 실행할 때 발견됩니다. 마약 밀매업자를 죽이면서 개발할 수도 없고, 그다지 실용적이지도 않다.

좋은 웹페이지 즐겨찾기