Skip to content

Instantly share code, notes, and snippets.

View ken0nek's full-sized avatar

Ken Tominaga ken0nek

  • San Francisco, CA
View GitHub Profile
@ken0nek
ken0nek / Country.swift
Created November 20, 2017 10:49
App Store Country List from ttps://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/AppStoreTerritories.html
import Foundation
/*
https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/AppStoreTerritories.html
*/
public enum Country: String {
case unitedArabEmirates = "ae"
case antiguaAndBarbuda = "ag"
case anguilla = "ai"
case albania = "al"
@ken0nek
ken0nek / URLCodableTest.playground
Last active June 12, 2017 15:08
Can not decode an entity which has Optional<URL> property.
//: Playground - noun: a place where people can play
import UIKit
struct URLCodableTest: Codable {
let ou: URL?
let u: URL
enum CodingKeys: String, CodingKey {
case ou
var result: [(hasSmile: Bool, leftEyeClosed: Bool, rightEyeClosed: Bool)] = []
for feature in features as! [CIFaceFeature] {
result.append((feature.hasSmile, feature.leftEyeClosed, feature.rightEyeClosed))
}
if result.count >= 1 {
if result[0].hasSmile {
self.playerAttack()
//
// RootViewController.swift
// iOS9Sampler
//
// Created by Shuichi Tsutsumi on 2015/06/10.
// Copyright © 2015 Shuichi Tsutsumi. All rights reserved.
//
import UIKit
@ken0nek
ken0nek / integral.swift
Last active December 11, 2015 10:39
integral, sigma
extension Double : ForwardIndexType {
public func successor() -> Double {
return self + 1.0
}
}
infix operator ∫ { associativity left precedence 120 }
func ∫ (left: Range<Double>, right: (Double -> Double)) -> Double {
let dx = (left.endIndex - left.startIndex) / 1000
let r = left.startIndex.stride(to: left.endIndex, by: dx)
let start = NSDate()
// someMethod
let timeElapsed = -startTime.timeIntervalSinceNow
print(timeElapsed)
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 06:34
【Swift】2つの配列から辞書を作る ref: http://qiita.com/ken0nek/items/8e97692eeaeda6eb5770
let romanStrs = ["M", "D", "C", "L", "X", "V", "I"]
let romanNums = [1000, 500, 100, 50, 10, 5, 1]
let romanToNum = zip(romanStrs, romanNums).reduce([String: Int]()) { (dic, t) in
var dic = dic
dic[t.1] = t.0
return dic
}
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 06:15
【Swift】enumerateを使ったときの値の受け取り方 ref: http://qiita.com/ken0nek/items/5c9c3f5138fbbaf5e82c
[1, 2, 3, 4] -> ["0:1", "1:2", "2:3", "3:4"]
@ken0nek
ken0nek / NSExpression
Last active September 28, 2016 08:21
【Swift】文字列の計算式を処理する ref: http://qiita.com/ken0nek/items/a5e2be8b27d6b19d50dd
let numList = [5, 8, 4, 2].map { String(Double($0)) } // 割り算を正確に行うためにDouble型への変換をはさむ
print(numList)
// ["5.0", "8.0", "4.0", "2.0"]
let opeList = ["+", "/", "-"]
let zipped = zip(numList, opeList + [""])
let equation = zipped.reduce("") { $0 + $1.0 + $1.1 }
print(equation)
@ken0nek
ken0nek / file0.swift
Last active September 28, 2016 08:14
【Swift】2つの配列を交互につなぎ合わせる ref: http://qiita.com/ken0nek/items/55e9ac0be32d35fbaa67
let num = 1234
// Int -> [String]
let numList = String(num).characters.flatMap { String($0) }
print(numList)
// ["1", "2", "3", "4"]
let opeList = ["+", "-", "*"]
let zipped = zip(numList, opeList + [""]) // 要素数を合わせる