Skip to content

Instantly share code, notes, and snippets.

View noahsark769's full-sized avatar

Noah Gilmore noahsark769

View GitHub Profile
@noahsark769
noahsark769 / SwitchExpression.swift
Created January 8, 2021 17:39
SwitchExpression.swift
@_functionBuilder struct SwitchExpression {
static func buildBlock<T>(_ content: T) -> T {
return content
}
static func buildEither<T>(first: T) -> T {
return first
}
static func buildEither<T>(second: T) -> T {
@noahsark769
noahsark769 / UserDefaultsWrappers.swift
Created May 14, 2021 18:20
User Defaults Property Wrappers
import Foundation
@propertyWrapper
struct SimpleUserDefault<T> {
let userDefaults: UserDefaults
let key: String
let defaultValue: T
init(
userDefaults: UserDefaults = UserDefaults.standard,
@noahsark769
noahsark769 / useGesture.ts
Last active March 17, 2024 17:13 — forked from KristofferEriksson/useGesture.ts
A custom React Typescript hook for advanced touch gestures in UI
import { useEffect, useRef } from "react";
type GestureType =
| "swipeUp"
| "swipeDown"
| "swipeLeft"
| "swipeRight"
| "tap"
| "pinch"
| "zoom";