Skip to content

Instantly share code, notes, and snippets.

@dfelber
dfelber / UIEdgeInsets+Uniform.swift
Created September 5, 2016 15:29
Initializer for UIEdgeInsets with one value for top, bottom, left and right
extension UIEdgeInsets {
init(inset: CGFloat) {
self.top = inset
self.bottom = inset
self.left = inset
self.right = inset
}
}
@dfelber
dfelber / HTTPStatusCodes.swift
Created September 7, 2016 12:19
Enum of HTTP Status codes
enum StatusCode: Int {
// Informational
case Continue = 100
case SwitchingProtocols = 101
case Processing = 102
// Success
case OK = 200
case Created = 201
case Accepted = 202
extension String {
subscript (i: Int) -> Character {
return self[self.startIndex.advancedBy(i)]
}
subscript (i: Int) -> String {
return String(self[i] as Character)
}
@dfelber
dfelber / CGRect+center.swift
Created October 28, 2016 06:29
Swift extension for CGRect to return the center as a CGPoint.
extension CGRect {
var center: CGPoint {
return CGPoint(x: midX, y: midY)
}
}
public extension Sequence {
func categorise<U : Hashable>(_ key: (Iterator.Element) -> U) -> [U:Int] {
var dict: [U:Int] = [:]
self.forEach { el in
let key = key(el)
dict[key] = (dict[key] ?? 0) + 1
}
return dict
@dfelber
dfelber / BouncyButton.swift
Last active May 8, 2022 05:38
Bouncy UIButton in swift. Becomes small when pressed and restores its size when released. Swift 3
//
// BouncyButton.swift
//
// Created by Domink Felber on 20.03.16.
// Copyright © 2016 Domink Felber. All rights reserved.
//
import Foundation
import UIKit