Skip to content

Instantly share code, notes, and snippets.

@sgr-ksmt
Last active July 24, 2017 07:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sgr-ksmt/b22276207a32616d678d775c26c5d300 to your computer and use it in GitHub Desktop.
Save sgr-ksmt/b22276207a32616d678d775c26c5d300 to your computer and use it in GitHub Desktop.
var set: Set<Int> = [1,2,3,4]
func f1<T>(value: T, set: inout Set<T>) {
if set.contains(value) {
set.remove(value)
} else {
set.insert(value)
}
}
func f2<T>(value: T, set: inout Set<T>) {
set.formSymmetricDifference([value])
}
f1(value: 1, set: &set)
print(set) // [2,3,4]
f1(value: 1, set: &set)
print(set) // [2,3,4,1]
f2(value: 1, set: &set)
print(set) // [2,3,4]
f2(value: 1, set: &set)
print(set) // [2,3,4,1]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment