I hereby claim:
- I am rollmind on github.
- I am rollmind (https://keybase.io/rollmind) on keybase.
- I have a public key ASDHVKuqfnxsGNBCmHuUiLoLqU4GdFa6tJUiK3tKYF95vgo
To claim this, I am signing this object:
import Foundation | |
import Security | |
public struct SwiftSecurity { | |
public enum SwiftSecurityError: Error { | |
case error(SecStatus) | |
} |
// | |
// WKWebView+Rx.swift | |
// RxGround | |
// | |
// Created by eyemac on 2017. 9. 2.. | |
// Copyright © 2017년 rollmind. All rights reserved. | |
// | |
import WebKit | |
import RxSwift |
final class RoutingModule { | |
weak var rootViewController: UIViewController? | |
var navigationController: UINavigationController? { | |
if let navigation = self.rootViewController as? UINavigationController { | |
return navigation | |
} else { | |
return self.rootViewController?.navigationController | |
} |
public func XCTRxHandle<Element>(_ description: String = "XCTAssertForRx", testcase: XCTestCase, timeout: TimeInterval = 1, queue: DispatchQueue = DispatchQueue(label: "Rx queue"), observable: Observable<Element>, trigger: @autoclosure @escaping () -> Void = {}(), value onNext: @escaping (Element?) -> Void = { _ in }, completed: @autoclosure @escaping () -> Void = {}(), error onError: @escaping (Error?) -> Void = { _ in }, result: (XCTWaiter.Result) -> Void = { _ in } ) { | |
let expect = testcase.expectation(description: description) | |
expect.assertForOverFulfill = false | |
let bag = DisposeBag() | |
queue.async { | |
observable.subscribe({ (event) in | |
switch event { | |
case .error(let error): | |
onError(error) |
let scheduler = ConcurrentDispatchQueueScheduler.init(qos: DispatchQoS.userInteractive) | |
let a = Observable<Int>.just(3).delay(3, scheduler: scheduler).debug("A") | |
let b = Observable<Int>.just(2).delay(2, scheduler: scheduler).debug("B") | |
// observable의 stream은 3을 전달. error 없음, XCTWaiter.Result는 completed | |
XCTRxHandle(testcase: self, timeout: 5, observable: a, value: { | |
XCTAssertEqual($0, 3) | |
}, error: { | |
XCTAssertNil($0) | |
}, result: { | |
XCTAssertEqual($0, .completed) |
struct Be<Value> { | |
let value: Value | |
} | |
protocol BeAddible { | |
var be: Be<Self> { get } | |
} | |
extension Be where Value: Comparable { |
I hereby claim:
To claim this, I am signing this object:
import Cocoa | |
var str = "궉토abcd스234꾹타ㅎ하후훼의" | |
extension Collection { | |
var toArray: [Element] { | |
return Array(self) | |
} | |
} | |
protocol UnicodeScalarCreatable { |
Use these steps to debug components of the Swift toolchain. This allows you to see Swift's source code from the debugger – instead of disassembly. The debugger can also provide some variable names and values. This has been initially tested with libswiftCore.dylib
.
These instructions were updated as of Swift 5.2.1.