Skip to content

Instantly share code, notes, and snippets.

View coreyd303's full-sized avatar
🐲

Corey Davis coreyd303

🐲
  • Remote
View GitHub Profile

Patterns Images

@coreyd303
coreyd303 / PATTERNS.md
Last active August 25, 2021 17:33
A Sample PATTERNS.md file

Patterns and Implementation

This document serves as a location to record details on specific patterns, their usage, and their implementations within the app as they currently exist. These patterns are to be considered best practices, and should be adheared to within reason for code development. These patterns are not to be considered infalible, or perfected by any means, and are open to continued adaptations, refinement, and improvement to meet the needs of the app, evolving technologies, or new understandings.

This document is also provided to aid developers and others in understanding how the app works and is to be considered living in nature. As such it should be revisited as the app evolves where and when approriate and developers should make their best efforts to keep it up to date should things change.

This document is owned by all contributors to this project, be they technical or otherwise. Updates to this document are encouraged as needed and can be submitted via PR as with any other contrib

@coreyd303
coreyd303 / ARCH.md
Last active August 25, 2021 17:03
A Sample ARCH.md file

App Architecture

This document serves as a location to record high level architectural and implementation patterns, including their histories and any tradeoffs. It is mean to all of us as contributors grow together as we build this app and empower any developer looking to contribute by guiding their efforts through the currently preferred patterns.

It is not meant to explain what the code is doing or how to use specific abstractions. It is also not meant to force us into a dogmatic corner; there are always exceptions to the rules.

This document is to be considered living and is owned by all contributors to this project, be they technical or otherwise. Updates to this document are encouraged as needed and can be submitted via PR as with any other contribution to this repository.

For a detailed discussion of current patterns and implementation within the app see: PATTERNS.md

$ kextstat
Executing: /usr/bin/kmutil showloaded
No variant specified, falling back to release
Index Refs Address Size Wired Name (Version) UUID <Linked Against>
1 133 0 0 0 com.apple.kpi.bsd (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
2 11 0 0 0 com.apple.kpi.dsep (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
3 161 0 0 0 com.apple.kpi.iokit (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
4 0 0 0 0 com.apple.kpi.kasan (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
5 165 0 0 0 com.apple.kpi.libkern (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
6 145 0 0 0 com.apple.kpi.mach (20.3.0) C86236B2-4976-3542-80CA-74A6B8B4BA03 <>
@coreyd303
coreyd303 / graphicsCrash.crash
Created April 8, 2021 21:08
Crash report 4/21
panic(cpu 0 caller 0xffffff7f8b212498): "Graphics firmware encountered an exception (eip: 0xbd82, fault #: 0xd)\n"@skl/sched3/IGGuC.cpp:889Backtrace (CPU 0), Frame : Return Address0xffffff83c5b03b70 : 0xffffff800691963d 0xffffff83c5b03bc0 : 0xffffff8006a53ae5 0xffffff83c5b03c00 : 0xffffff8006a4566e 0xffffff83c5b03c50 : 0xffffff80068bfa40 0xffffff83c5b03c70 : 0xffffff8006918d07 0xffffff83c5b03d70 : 0xffffff80069190f7 0xffffff83c5b03dc0 : 0xffffff80070c01cc 0xffffff83c5b03e30 : 0xffffff7f8b212498 0xffffff83c5b03e80 : 0xffffff7f8b187ef6 0xffffff83c5b03ee0 : 0xffffff800702bc5d 0xffffff83c5b03f30 : 0xffffff800702a52e 0xffffff83c5b03f70 : 0xffffff8007029b26 0xffffff83c5b03fa0 : 0xffffff80068bf13e       Kernel Extensions in backtrace:         com.apple.driver.AppleIntelKBLGraphics(14.0.7)[D944342F-11C2-38F7-A113-412261DE3D36]@0xffffff7f8b186000->0xffffff7f8b27cfff            dependency: com.apple.iokit.IOPCIFamily(2.9)[017B6656-0279-38F7-917D-97CB6A21AC33]@0xffffff7f87312000            dependency: com.apple.iokit.IO
@coreyd303
coreyd303 / StructsSample.swift
Last active October 2, 2020 18:52
This is a code sample demonstrating the basics of Structs in Swift
struct Car {
let make: String
let model: String
var color: String
private(set) var mileage: Int? = 0
mutating func update(mileage: Int) {
self.mileage = mileage
}
import Foundation
func quickSort(array: inout [Int], low: Int, high: Int) {
// if the high index value is greater than the low index value we need to partition and sort
if high > low {
// determine our pivot index by generating partitions
let pi = partition(array: &array, low: low, high: high)
// recursively pass our upper and lower partitions back into quickSort using the new pivot index
quickSort(array: &array, low: low, high: pi - 1)
struct Nucleotide {
private let validNucleotides = "ATCG"
private var errorMessage: ((Character) -> (String)) = { n in
return "\(n) is not a valid Nucleotide"
}
let dna: String
init(_ dna: String) {
func bubbleSort(array: [Int]) -> [Int] {
var array = array
for i in 0..<array.count {
for j in 1..<array.count - i {
if array[j] < array[j - 1] {
array.swapAt(j, j - 1)
}
}
}
@coreyd303
coreyd303 / mergeSort.swift
Last active June 1, 2020 21:37
SwiftyAlgos: Merge Sort
import UIKit
// Merge sort in Swift
// Split arrays
func mergeSort(array: [Int]) -> [Int] {
guard array.count > 1 else {
return array