Skip to content

Instantly share code, notes, and snippets.

View networkextension's full-sized avatar

abigt networkextension

  • Star
View GitHub Profile
@networkextension
networkextension / querydns.swift
Last active November 8, 2016 04:47
quary dns use swift 3
func query(domain:String) ->[String] {
var results:[String] = []
//dispatch_async(q) { [weak self] in
let host = CFHostCreateWithName(nil,domain as CFString).takeRetainedValue()
//NSLog("getIPFromDNS %@", hostName)
//let d = NSDate()
CFHostStartInfoResolution(host, .addresses, nil)
var success: DarwinBoolean = false
if let addresses = CFHostGetAddressing(host, &success)?.takeUnretainedValue() as NSArray? {
@networkextension
networkextension / timer.swift
Created November 8, 2016 04:46
swift3 timer
import Foundation
import Dispatch
func test(){
for _ in 1..<5 {
print("Hello, World!")
}
}
class testclass{
@networkextension
networkextension / StringExtensionHTML.swift
Last active November 9, 2017 20:25 — forked from mwaterfall/StringExtensionHTML.swift
Decoding HTML Entities in Swift3
//: [Previous](@previous)
import Foundation
var str = "Hello, playground"
import Foundation
// Very slightly adapted from http://stackoverflow.com/a/30141700/106244
// 99.99% Credit to Martin R!
@networkextension
networkextension / dispatch_after.swift
Created November 8, 2016 13:27
dispatch_after Swift3
import UIKit
var str = "Hello, playground"
let x = UINT32_MAX
print(Date())
let q = DispatchQueue.init(label: "test", qos: .background, attributes: .init(rawValue: 0), autoreleaseFrequency: .never, target: nil)
var flag = true
print(q.label)
q.asyncAfter(deadline: .now() + 3) {
import Darwin
extension sockaddr_storage {
/// Calls a closure with traditional BSD Sockets address parameters.
///
/// This is used to call BSD Sockets routines like `connect`, which accept their
/// address as an `sa` and `saLen` pair. For example:
///
/// let ss: sockaddr_storage = …
@networkextension
networkextension / mybutton.swift
Last active December 6, 2016 06:59
UIButton imp demo
import UIKit
class SFTargetAction: NSObject {
var target:NSObject
var action:Selector
var event:UIControlEvents
init(_ t:NSObject,a:String,e:UIControlEvents) {
target = t
action = NSSelectorFromString(a)
@networkextension
networkextension / dispatch_after_calss.swift
Created December 6, 2016 07:28
dispatch after calss swift3
import Cocoa
var str = "Hello, playground"
let x = UINT32_MAX
class FBQueue {
typealias qblock = ((Void) ->Void)
typealias qfinishBlock = ((Bool) ->Void)?
let call:qblock
@networkextension
networkextension / Swift3_timer2.swift
Created December 6, 2016 08:03
Swift3 DispatchSourceTimer
//: Playground - noun: a place where people can play
import Cocoa
var str = "Hello, playground"
import Foundation
import Dispatch
func test(){
@networkextension
networkextension / json_filter.swift
Created December 6, 2016 08:47
json_filter.swift
let persons: [[String: Any]] = [["name": "Carl Saxon", "city": "New York, NY", "age": 44],
["name": "Travis Downing", "city": "El Segundo, CA", "age": 34],
["name": "Liz Parker", "city": "San Francisco, CA", "age": 32],
["name": "John Newden", "city": "New Jersey, NY", "age": 21],
["name": "Hector Simons", "city": "San Diego, CA", "age": 37],
["name": "Brian Neo", "age": 27]] //注意这家伙没有 city 键值
func infoFromState( state: String, persons: [[String: Any]])
-> Int {
// 先进行 flatMap 后进行 filter 筛选
// $0["city"] 是一个可选值,对于那些没有 city 属性的项返回 nil
class Number /* class cluser */ {
class Int8: Number {
var value: Swift.Int8
init(_ value: Swift.Int8) { self.value = value }
}
class Int: Number {
var value: Swift.Int
init(_ value: Swift.Int) { self.value = value }
}