Skip to content

Instantly share code, notes, and snippets.

@loganwright
loganwright / xcodebuild.md
Created October 21, 2015 01:23
Xcode build lines

Some commands I'm using from xcodebuild for possible future reference. If you don't know what you're doing, this probably isn't a good place to be because I don't either!

xcodebuild -scheme "Bose Connect" -workspace Monet.xcworkspace -configuration Debug clean build test -destination platform='iOS Simulator',name='iPhone 6'

@loganwright
loganwright / SubmissionChecklist.md
Created October 20, 2015 19:34
Submission Checklist

Client

  • App Icon
  • Screenshots
  • Decriptions
  • Tags (< 1000 characters)
  • Setup Apple Developer Account
  • Grant Access to Developers

Dev

@loganwright
loganwright / ImageManager.swift
Created October 20, 2015 14:20
Image Manager
private let ImageFolderDirectoryName = "SomeAppDomainImageDirectory"
final class ImageManager: NSObject {
// MARK: Singleton
class func sharedManager() -> ImageManager {
struct Singleton {
static let instance = ImageManager()
}
@loganwright
loganwright / tableViewCellBindingData.swift
Created October 9, 2015 03:13
TableViewCell Binding Data
protocol Configurable {
func configure<T : TableViewCellConvertible>(model: T)
}
protocol TableViewCellConvertible {
typealias CellType : UITableViewCell, Configurable
var identifier: String { get }
}
extension TableViewCellConvertible {
@loganwright
loganwright / EnumExtensions.swift
Last active July 15, 2016 18:31
Int enum type extensions
protocol RawIntInitable {
init?(rawValue: Int)
}
extension RawIntInitable {
static var allCases: [Self] {
var caseIndex = 0
let generator = anyGenerator { Self(rawValue: caseIndex++) }
return Array(generator)
@loganwright
loganwright / Log.swift
Created July 28, 2015 23:56
Swift Logging
func Log(message: String, file: String = __FUNCTION__, function: String = __FILE__, line: Int = __LINE__, column: Int = __COLUMN__) {
println("\(file) : \(function) : \(line) : \(column) - \(message)")
}

A basic wrapper for dispatch operations in Swift. Syntax example:

    Qu.Background {
        // Sleep for long operation
        sleep(4)
        log("1")
    } .Also {
        sleep(4)
 log("2")
@loganwright
loganwright / After.swift
Last active October 28, 2015 14:24
After
func After(after: NSTimeInterval, op: () -> ()) {
After(after, op: op, completion: nil)
}
func After(after: NSTimeInterval, numberOfTimes: Int, op: () -> (), completion: Void -> Void = {}) {
let numberOfTimesLeft = numberOfTimes - 1
let wrappedCompletion: Void -> Void
if numberOfTimesLeft > 0 {
wrappedCompletion = {
After(after, numberOfTimes: numberOfTimesLeft, op: op, completion: completion)
import Foundation
extension Dictionary {
mutating public func setValue(val: AnyObject, forKeyPath keyPath: String) {
var keys = keyPath.componentsSeparatedByString(".")
guard let first = keys.first as? Key else { print("Unable to use string as key on type: \(Key.self)"); return }
keys.removeAtIndex(0)
if keys.isEmpty, let settable = val as? Value {
self[first] = settable
} else {