Skip to content

Instantly share code, notes, and snippets.

View ikasoba's full-sized avatar
貴様ッ!見ているなッ!

ikasoba ikasoba

貴様ッ!見ているなッ!
View GitHub Profile
@ikasoba
ikasoba / createEnum.ts
Created July 12, 2022 09:10
create enum like object from string[]
const createEnum = <T extends string|number>(a:readonly T[]|T[]): {[K in T]: K} => Object.fromEntries<T>(a.map(x => [x,x])) as any;
@ikasoba
ikasoba / calculator.ts
Created October 27, 2022 14:29
calculator.ts
type Pattern<T> = (i: number, s: string) => null | [number, T]
interface TokenBase {
type: string
}
interface NumberToken extends TokenBase {
type: "number",
value: number
}
cmp_version_le(){ \
v1=($(echo -n $1 | xargs -d.)) \
; v2=($(echo -n $2 | xargs -d.)) \
; if [ ${#v1[*]} -lt ${#v2[*]} ]; then \
t=$v1 \
; v1=$v2 \
; v2=$t \
; fi \
; for i in ${!v1[*]}; do \
if [ ${#v2[$(($i + 1))]} = 0 ]; then \
@ikasoba
ikasoba / jbon.js
Created March 25, 2023 17:31
The one that encodes json to binary
const BinaryTypes = {
EOO: 0,
Null: 1,
NumberF64: 2,
NumberF32: 3,
NumberI32: 4,
NumberU32: 5,
BoolTrue: 6,
BoolFalse: 7,
String: 8,
@ikasoba
ikasoba / logical.ts
Created June 25, 2023 05:21
型レベルの論理なんちゃら
type And<A extends boolean, B extends boolean> = (A | B) extends true ? true : false;
type Or<A extends boolean, B extends boolean> = true extends (A | B) ? true : false;
type Not<A extends boolean> = A extends false ? true : false;
type Xor<A extends boolean, B extends boolean> = boolean extends (A | B) ? true : false;
@ikasoba
ikasoba / Result.ts
Created August 2, 2023 04:36
result型作ってみた
export type Result<T, E> = ResultImpl<T, never> | ResultImpl<never, E>;
export const Result = class {
static ok(value: void): Result<void, never>;
static ok<T>(value: T): Result<T, never>;
static ok<T>(value: T): Result<T, never> {
return new ResultImpl(true, value as {}) as Result<T, never>;
}
static err(value: void): Result<never, void>;
static err<E>(value: E): Result<never, E>;
@ikasoba
ikasoba / index.csv
Last active August 10, 2023 09:52
みすてむマイクラサーバーの座標一覧
名前 座標 場所
メサ 37 ~ -271 生活
トラップタワー 118 ~ 308 資源
森(オークと白樺) 433 ~ 244 生活
古代都市(メサの地下) 714 ~ 1455 資源
@ikasoba
ikasoba / aliases.yml
Last active August 11, 2023 12:43
Emojiful + みすてむず エイリアス集
- alias: tiken
name: tiken_chiken
@ikasoba
ikasoba / cssin.js
Created August 20, 2023 14:35
クライアントサイドで簡易 css in js
const styleElement = document.createElement("style");
document.head.append(styleElement);
const classes = {};
let lastIds = 0n;
export const css = (src, ...values) => src.map((x, i) => x + (i < values.length ? CSS.escape("" + values[i]) : "")).join("");
export const style = (name, code) => {
const cls = classes[name] = CSS.escape(`--cssinjs-${lastIds++}`);
@ikasoba
ikasoba / バグったぜ。.md
Last active January 30, 2024 15:34
こんな変態糞親父とバグ潰ししないか?

バグったぜ。

昨日の8月15日にいつもの構成で先日リリースされた修正済みのバージョン(1.45.0)とわし(53歳)で県北にある川の土手の下でバグりあったぜ。

今日は明日が休みなんでコンビニで酒とつまみを買ってからしこたまPRを書き始めるんや。

What happened?

地下足袋だけになり、持ってきたHHKBでコードを書きあった。

しばらくしたら、サーバーがヒクヒクして来るし、リクエストが出口を求めてぐるぐるしていた。