Skip to content

Instantly share code, notes, and snippets.

@samsonjs
Created October 6, 2017 21:18
Show Gist options
  • Save samsonjs/c8933c07ad985b74aba994f2fdab8b47 to your computer and use it in GitHub Desktop.
Save samsonjs/c8933c07ad985b74aba994f2fdab8b47 to your computer and use it in GitHub Desktop.
A hack to improve compile times by avoiding the nil-coalescing operator (??)
extension Optional {
func or(_ defaultValue: Wrapped) -> Wrapped {
switch self {
case .none: return defaultValue
case let .some(value): return value
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment