Swift's Sugar. Heavily inspired on Objc Sugar(https://github.com/supermarin/ObjectiveSugar)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
SwiftSugar.xcodeproj
SwiftSugar
SwiftSugarTests
.gitignore
License
README.md

README.md

Note: Used as an exercise mainly, still you can make use of it of course

Inspiration

Swift Sugar is heavily inspired on ObjectiveSugar.

Documentation

Int extensions

3.times {
    println("Hello!")
}
// Hello!
// Hello!
// Hello!
3.timesWithIndex {
    index in println(index)
}
// 0
// 1
// 2
3.upTo(5) {
    index in println(index)
}
// 3
// 4
5.downTo(0) {
    index in println(index)
}
// 5
// 4
// 3
// 2
// 1

Array functions

[1,2,3,4].initial(3)
// [1,2,3]
[1,2,3,4].initial()
// [1]
[1,2,3,4].drop {$0 % 2 ==0}
// [2,4]
[1,2,3,4].remove(2)
// [3,4]
[1,2,3,4].minimum()
// 1
[1,2,3,4].maximum()
// 4
[1,2,3,4,1].numberTimesRepeated(1)
// 2

String functions

"Swift programming".length
// 17
"Swift programming"[1]
// w
"Swift programming"[-4]
// m
String.join(["S","w","i"])
//Swi
String.join("S","w","i","f","t")
//Swift
"Swift programming".split()
//["Swift", "programming"]
"Swift programming".split(delimiter:"r")
//["Swift p", "og", "amming"]
"Swift programming".indexOfString("mm")
// 12
"Swift programming".toCharacterArray()
//["S","w","i","f","t"," ","p","r","o","g","r","a","m","m","i","n","g"]
"Swift programming".reverse()
//gnimmargorp tfiwS

Swift Sugar (Global functions)

let x : [(Int,Int)] = zip([1,2,3,4,5], [1,2,3])
// [(1,1),(2,2),(3,3)]