SmartAssign.swift 822 B

123456789101112131415161718192021222324252627282930313233
  1. //
  2. // SmartAssign.swift
  3. // ManualLayout
  4. //
  5. // Created by Baris Sencan on 26/02/15.
  6. // Copyright (c) 2015 Baris Sencan. All rights reserved.
  7. //
  8. import UIKit
  9. precedencegroup SmartAssignment {
  10. assignment: true
  11. }
  12. infix operator =~ : SmartAssignment
  13. @discardableResult
  14. public func =~ (point: inout CGPoint, pointTuple: (CGFloat, CGFloat)) -> CGPoint {
  15. point = CGPoint(x: pointTuple.0, y: pointTuple.1)
  16. return point
  17. }
  18. @discardableResult
  19. public func =~ (size: inout CGSize, sizeTuple: (CGFloat, CGFloat)) -> CGSize {
  20. size = CGSize(width: sizeTuple.0, height: sizeTuple.1)
  21. return size
  22. }
  23. @discardableResult
  24. public func =~ (rect: inout CGRect, rectTuple: (CGFloat, CGFloat, CGFloat, CGFloat)) -> CGRect {
  25. rect = CGRect(x: rectTuple.0, y: rectTuple.1, width: rectTuple.2, height: rectTuple.3)
  26. return rect
  27. }