Skip to content

Instantly share code, notes, and snippets.

View doroshenko's full-sized avatar

Dmytro Doroshenko doroshenko

  • Copenhagen, Denmark
View GitHub Profile
@doroshenko
doroshenko / ContentView.swift
Created May 3, 2020 18:09
Unified preview style for SwiftUI's PreviewProvider
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
@doroshenko
doroshenko / IPv4.swift
Last active May 3, 2020 23:17
IPv4 storage and handling in Swift
import Foundation
typealias IPv4 = UInt32
extension IPv4 {
private static let octetCount = Self.bitWidth / UInt8.bitWidth
init?(octets: [UInt8]) {
guard octets.count == IPv4.octetCount else { return nil }
@doroshenko
doroshenko / LocalIPAddress.swift
Last active May 3, 2020 18:13
A simple local IPv4 address and mask retrieval in Swift
static var localIPAddress: (address: String?, mask: String?) {
let wifiInterface = "en0"
var address: String?
var mask: String?
var ifaddr: UnsafeMutablePointer<ifaddrs>?
guard getifaddrs(&ifaddr) == 0 else {
return (address: address, mask: mask)
}
@doroshenko
doroshenko / swiftlint.sh
Created February 22, 2020 22:50
An incremental linting script for SwiftLint
#!/bin/bash
START_DATE=$(date +"%s")
SWIFTLINT="${PODS_ROOT}/SwiftLint/swiftlint"
EXIT_CODE=0
# Usage description
function usage() {
if [ -n "$1" ]; then