Skip to content

Zentaur0/Optional-Extensions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Optional-Extensions

This extesnions allows you to write more readable code and not to use nil coalliasing operator "??" in order to provide default value for a common Swift types.

Examples:

  1. String/Array/Set/Dictionary
let someOptionalString: String? = nil

// instead of this 
let someString: String = someOptionalString ?? ""

// we will use this
let someString: String = someOptionalString.orEmpty
  1. Int/Double/Float/CGFloat...
let someOptionalNumber: Int? = nil

// instead of this 
let someNumber: Int = someOptionalNumber ?? 0

// we will use this
let someNumber: Int = someOptionalNumber.orZero
  1. Date
let someOptinonalDate: Date? = nil

// instead of this 
let someDate: Date = someOptinonalDate ?? Date()

// we will use this
let someDate: Date = someOptinonalDate.orToday
  1. Bool
let someOptionalBool: Bool? = nil

// instead of this 
let someBool: Bool = someOptionalBool ?? false

// we will use this
let someBool: Bool = someOptionalBool.orFalse

For optional chaining, it would look like this

let someNumber = (someNonOptionalValue.someOptionalValue?.someNonOptionalNumber).orZero

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages