Skip to content

Instantly share code, notes, and snippets.

View ktanaka117's full-sized avatar

Tanaka Kenji ktanaka117

View GitHub Profile
@ktanaka117
ktanaka117 / CodePiece.swift
Created March 1, 2018 01:35
こんなかんじのコードだっけか? #CodePiece #tryswiftconf
func f(_ arg: inout String) {
arg = "🐥"
arg = "🐓"
}
var egg: String = "🥚" {
didSet { print(oldValue) }
}
f(&egg)
@ktanaka117
ktanaka117 / CodePiece.swift
Created March 1, 2018 01:23
_ #CodePiece #tryswiftconf
lelt _: (Int) -> Int = { $0 + 1 }
@ktanaka117
ktanaka117 / CodePiece.swift
Created March 1, 2018 01:22
これはしたくないよねという話 #CodePiece #tryswiftconf
class SomeClass {
var v: Int!
}
@ktanaka117
ktanaka117 / UITextField+nonOptionalText.swift
Created February 3, 2018 06:46
RxのUITextField.textをunwrapしてくれる君。
import RxSwift
import RxCocoa
extension Reactive where Base: UITextField {
var nonOptionalText: Observable<String> {
return base.rx.text.asObservable().map { text -> String in
if let _ = text {
return text!
}
@ktanaka117
ktanaka117 / redify_jp_slide_to_upload_slideshare.sh
Last active October 28, 2017 07:37
https://qiita.com/yasulab/items/49511c27179be454d568 ←を参考にした。 SlideshareにKeynoteから生成したpdfをあげると日本語が表示されない問題がある。それを防ぐスクリプト。使い方は `$ sh redify_jp_slide_to_upload_slideshare.sh <pdfのファイルパス>`
#!/bin/bash
set -eu
function lack_of_necessary_param() {
echo "-pオプションは必須オプションです。-pオプションを必ず使用して、ファイルパスを指定してください。"
exit 1
}
IS_THERE_NECESSARY_OPT=false
'use strict'
const sleep = someFunction => {
return new Promise(resolve => {
setTimeout(() => {
resolve(someFunction())
}, 5000)
})
}
'use strict'
const sleep = someFunction => {
return new Promise(resolve => {
setTimeout(() => {
resolve(someFunction())
}, 5000)
})
}
import UIKit
public struct Maker<Product> {
let product: Product
}
extension Maker where Product: UILabel {
public func set(textColor color: UIColor) -> Maker {
self.product.textColor = color
return self
import UIKit
public struct UILabelMaker {
let label: UILabel
}
extension UILabelMaker {
public func set(textColor color: UIColor) -> UILabelMaker {
self.label.textColor = color
return self
@ktanaka117
ktanaka117 / promise_async_await.js
Last active October 24, 2017 08:32
JavaScriptのPromiseとasync/awaitの比較
'use strict'
const sleep = (someFunction) => {
setTimeout(someFunction, 5000)
}
// Promise
const promiseFunction = (() => {
return new Promise((resolve, reject) => {
sleep(() => {