Sources/Tea/Extensions.swift (26 lines of code) (raw):

import Foundation extension String { private static let randomDict = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" func toBytes() -> [UInt8] { [UInt8](self.utf8) } func jsonDecode() -> [String: AnyObject] { let jsonData: Data = self.data(using: .utf8)! guard let data = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers) as? [String: AnyObject] else { return [String: AnyObject]() } return data } func urlEncode() -> String { let unreserved = "*-._" let allowedCharacterSet = NSMutableCharacterSet.alphanumeric() allowedCharacterSet.addCharacters(in: unreserved) allowedCharacterSet.addCharacters(in: " ") var encoded = addingPercentEncoding(withAllowedCharacters: allowedCharacterSet as CharacterSet) encoded = encoded?.replacingOccurrences(of: " ", with: "%20") return encoded ?? "" } func isNumber() -> Bool { !isEmpty && rangeOfCharacter(from: CharacterSet.decimalDigits.inverted) == nil } }