Guest User

Untitled

a guest
Nov 18th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. var x: Void
  2. println(x)
  3. x = test()
  4.  
  5. func test() {}
  6.  
  7. infix operator ~~ { precedence 10 associativity right }
  8. func ~~(l: A -> B, r: A) -> B {
  9. return l(r)
  10. }
  11.  
  12. let productsSoldIn2014 = productOfSales ~~ salesInYears ~~ [2014]
  13. let salespersonsInvolvedIn2014Sales = salespersonsOfSales ~~ salesInYears ~~ [2014]
  14.  
  15. fireSalespersons ~~ salespersonsOfSales ~~ salesInYears ~~ [2014] // Awful companies only.
  16.  
  17. func salesInYears(_ y: [Int]) -> [Sale] { … }
  18. func productsOfSales(_ s: [Sale]) -> [Product] { … }
  19. func salespersonsOfSales(_ s: [Sale]) -> [SalesPerson] { … }
  20. func fireSalespersons(_ s: [SalesPerson]) -> () { … } // The appended arrow and null tuple can be left out.
  21.  
  22. increaseCEOBonus(35000) ~~ fireSalespersons ~~ salespersonsOfSales ~~ salesInYears ~~ [2014] // Really awful companies only.
  23. // () -> () ~~ [Salesperson] -> () ~~ [Sales] -> [Salesperson] …
  24.  
  25. func increaseCEOBonus(amount: Int)() { … }
  26.  
  27. let someString = "foo"
  28. let saved: Void? = try? someString.write(toFile: "somePath", atomically: false, encoding: .utf8)
  29. if (saved == nil) {
  30. print("didn't save")
  31. }
  32.  
  33. class Foo<T> {
  34.  
  35. var x : T?
  36.  
  37. func finishWith(result:T) {
  38. x = result
  39. // do more stuff here as a side effect of posting the result
  40. }
  41. }
  42.  
  43. var foo = Foo<Void>()
  44.  
  45. foo.finishWith(result: ())
  46.  
  47. func someInitialization() {
  48. // code goes here
  49. }
  50.  
  51. let ignore: Void = someInitilization()
Add Comment
Please, Sign In to add comment