Skip to content

Instantly share code, notes, and snippets.

@stuartbreckenridge
stuartbreckenridge / ConstantShortHand.swift
Last active May 28, 2016 02:57
Configuring a Constant Using Shorthand Argument Labels
// See https://www.natashatherobot.com/swift-configuring-a-constant-using-shorthand-argument-names/ for more info.
public enum TaxiServiceType:CustomStringConvertible
{
case Uber
case BlackCab
public var description: String {
switch self {
case .BlackCab:
@stuartbreckenridge
stuartbreckenridge / SLComposable.swift
Last active May 25, 2016 15:10
SLComposable Protocol—Easy to use protocol for creation and presentation of SLComposeViewControllers
//
// SLComposable.swift
// SocialFrameworkRef
//
// Created by Stuart Breckenridge on 24/05/2016.
// Copyright © 2016 Stuart Breckenridge. All rights reserved.
//
import Foundation
import Social
protocol AmountConversions
{
// Convert Mls
func convertMlsToUKFLOz(mls:Int) -> NSNumber // mls * 0.035195
func convertMlsToUSFLOz(mls:Int) -> NSNumber // mls * 0.033814
// Convert UKFLOz
func convertUKFLOzToMls(ukfloz:Float) -> NSNumber // uk fl oz / 0.035195
func convertUKFLOzToUSFLOz(ukfloz:Float) -> NSNumber // uk fl oz * 0.96076
@stuartbreckenridge
stuartbreckenridge / SwiftGCD.swift
Created February 13, 2016 12:19
Swiftier GCD (via NSHipster)
protocol ExcutableQueue {
var queue: dispatch_queue_t { get }
}
extension ExcutableQueue {
func execute(closure: () -> Void) {
dispatch_async(queue, closure)
}
}
@stuartbreckenridge
stuartbreckenridge / UIAlertControllerErrorDisplay
Created November 20, 2015 00:45
Remove boilerplate when displaying UIAlertControllers from a UIViewController
protocol UIAlertControllerErrorDisplay
{
func showAlertControllerWithError(error:NSError)
}
extension UIViewController:UIAlertControllerErrorDisplay
{
func showAlertControllerWithError(error:NSError)
{
NSOperationQueue.mainQueue().addOperationWithBlock { () -> Void in
@stuartbreckenridge
stuartbreckenridge / NumberGenerator
Created January 17, 2015 16:24
Number Generator for Lottery Games.
class NumberGenerator
{
class func generateLottoNumbers(#count:Int,maxRange:UInt32, duplicatesAllowed:Bool = false) -> ([Int])
{
var i = 0
var uniqueSet = NSMutableSet(capacity: count)
var numberArray1 = [Int]()
do{
var genNumber = (Int(arc4random() % maxRange + 1))
@stuartbreckenridge
stuartbreckenridge / GameCenterInteractor
Last active September 10, 2015 11:34
Game Center Authentication
//
// GameCenterInteractor.swift
// GameKitInteraction
//
// Created by Stuart Breckenridge on 19/11/14.
// Copyright (c) 2014 Stuart Breckenridge. All rights reserved.
//
import UIKit
import GameCenter