Skip to content

Instantly share code, notes, and snippets.

@TarasShu
Last active June 16, 2020 12:40
Show Gist options
  • Save TarasShu/99652cb574a675916a82c1b475a3d11c to your computer and use it in GitHub Desktop.
Save TarasShu/99652cb574a675916a82c1b475a3d11c to your computer and use it in GitHub Desktop.
struct Siblings {
var sibling1: Int
var sibling2: Int
init(sibling1: Int, sibling2: Int){
self.sibling1 = sibling1
self.sibling2 = sibling2
}
init (sibling1: Int) {
self.init(sibling1: sibling1, sibling2: 0)
}
init (sibling2: Int) {
self.init(sibling1: 0, sibling2: sibling2)
}
}
var siblings = Siblings(sibling1: 3, sibling2: 4)
Siblings(sibling1: 1)
var bro1 = Siblings(sibling1: 1)
var bro2 = Siblings(sibling2: 2)
func swapOnce<Lol> (_ bro1: inout Lol,_ bro2: inout Lol) {
let swapOnceAgain = bro1
bro1 = bro2
bro2 = swapOnceAgain
}
if bro1 > bro2 { // Binary operator '>' cannot be applied to two 'Siblings' operands
print("Older brother is \(bro1), youngest brother is \(bro2)")
}
else {
swap(&bro1, &bro2)
print("Older brother is \(bro1), youngest brother is \(bro2)")
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment