Skip to content

Instantly share code, notes, and snippets.

Avatar
🏠
#stayhome

Mathias Quintero nerdsupremacist

🏠
#stayhome
View GitHub Profile
@nerdsupremacist
nerdsupremacist / anyView.swift
Created May 20, 2020
Attempt at creating an AnyView from an Any
View anyView.swift
private protocol AnyViewConvertible {
func anyView() -> AnyView
}
extension View {
func anyView() -> AnyView {
return AnyView(self)
}
}
@nerdsupremacist
nerdsupremacist / OrderedSet.swift
Created May 13, 2020
Persistent Cache construct with Hashable Keys
View OrderedSet.swift
import Foundation
public struct OrderedSet<E: Hashable>: Equatable, Collection {
public typealias Element = E
public typealias Index = Int
public typealias Indices = Range<Int>
private var array: [Element]
@nerdsupremacist
nerdsupremacist / Debounced.swift
Last active Oct 2, 2020
Debounced Property Wrapped
View Debounced.swift
import SwiftUI
import Combine
@propertyWrapper
struct Debounced<Value>: DynamicProperty {
private class Box: ObservableObject {
let value = PassthroughSubject<Value, Never>()
@Published
private(set) var debounced: Value
@nerdsupremacist
nerdsupremacist / GridView.swift
Last active Jun 27, 2020
Grid View with View Builder SwiftUI
View GridView.swift
import SwiftUI
struct GridView: View {
let columns: Int
let columnAlignment: VerticalAlignment
let rowAlignment: HorizontalAlignment
let rowSpacing: CGFloat?
let columnSpacing: CGFloat?
let content: [AnyView]
@nerdsupremacist
nerdsupremacist / View+binding.swift
Created Jan 13, 2020
Set up bindings for Combine Publishers within the lifecycle of a SwiftUI View
View View+binding.swift
import Foundation
import Combine
import SwiftUI
extension View {
func binding(@CancellableBuilder bindings: @escaping () -> AnyCancellable) -> some View {
return BindingView(content: AnyView(self), bindings: bindings)
}
@nerdsupremacist
nerdsupremacist / String+camelized.swift
Last active Dec 25, 2019 — forked from reitzig/Camelizer.swift
Convert Swift strings to camel case
View String+camelized.swift
fileprivate let badChars = CharacterSet.alphanumerics.inverted
extension String {
var uppercasingFirst: String {
return prefix(1).uppercased() + dropFirst().lowercased()
}
var lowercasingFirst: String {
return prefix(1).lowercased() + dropFirst().lowercased()
}
@nerdsupremacist
nerdsupremacist / LargestWords.swift
Created Jan 23, 2019
LargestSevenSegmentDisplayableWords
View LargestWords.swift
import Foundation
enum ComparisonResult {
case equal
case larger
case smaller
}
extension Comparable {
@nerdsupremacist
nerdsupremacist / Property.dart
Created Oct 14, 2018
Property class for MVVM in Flutter
View Property.dart
import 'dart:async';
import 'package:flutter/material.dart';
class Property<Value> implements Sink<Value> {
Value _internalValue;
final StreamController<Value> _streamController = StreamController.broadcast();
Value get value {
View stupidFizzBuzz.swift
import Foundation
let fb = [
3 : "Fizz",
5 : "Buzz",
6 : "Fizz",
9: "Fizz",
10: "Buzz",
12: "Fizz",
@nerdsupremacist
nerdsupremacist / SSID.swift
Last active Dec 11, 2017 — forked from werediver/WiFiSsid.swift
Get the connected Wi-Fi network SSID on iOS (in Swift).
View SSID.swift
import Foundation
import SystemConfiguration.CaptiveNetwork
func ssid() -> String? {
let interfaces = CNCopySupportedInterfaces() as [AnyObject]?
let interfaceNames = interfaces?.map { $0 as! CFString }
let interfaceDictionaries = interfaceNames?.flatMap { CNCopyCurrentNetworkInfo($0) as? [String : AnyObject] }
return interfaceDictionaries?.flatMap { $0[kCNNetworkInfoKeySSID as String] as? String }
.first
}
You can’t perform that action at this time.