Skip to content

Instantly share code, notes, and snippets.

View CCColda's full-sized avatar

Tamás Szilágyi CCColda

View GitHub Profile
/**
* @headerfile Event.hpp
* @author COlda
* @copyright MIT
* @see https://gist.github.com/CCColda/e3d3410c2c816cf6e394f133884858c8
*/
#ifndef COLDA_EVENT_H
#define COLDA_EVENT_H
/**
* @brief Gives the Promise + non-Promise variant of a function
* @example MaybePromise<(x: number, y: string | number) => Date> =
* ((x: number, y: string | number) => Date) | ((x: number, y: string | number) => Promise<Date>)
* @author COlda
*/
type MaybePromise<T extends (...args: any) => any> = T | (T extends (...args: infer A) => infer R ? (...args: A) => Promise<R> : never);
@CCColda
CCColda / voltage_divider.js
Created August 23, 2021 12:18
Voltage divider calculator
/**
* @typedef {{
* vin: number,
* vout: number
* } & ({r1: number} | {r2: number})} TVoltageDividerParams
*
* @typedef {{
* vin: number,
* vout: number,
* r: Set<number> | number[]
@CCColda
CCColda / listutil.hs
Last active December 30, 2020 19:00
Implementations for 10 of the 99 haskell problems
{-|
See: https://wiki.haskell.org/99_questions/1_to_10
Author: CCCOlda 2020
-}
module ListUtil where
-- || Describes a nested list structure
data NestedList a = Elem a | List [NestedList a]