typescript / expert
Snippet
Typensichere bitweise Maskengenerierung für hochperformante Audit-Protokolle
Kombiniert nominale Typmarkierung (Branding) mit binären Bitmasken. Dies ermöglicht Privilegienprüfungen im Nanosekundenbereich und verhindert gleichzeitig die Übergabe unmarkierter Zahlen in Sicherheitsprüfungen.
snippet.ts
typescript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
type FlagBitmask<N extends number> = number & { readonly __brand: N };enum AuditFlags {READ = 1 << 0,WRITE = 1 << 1,DELETE = 1 << 2,ADMIN = 1 << 3,}function combineFlags<F extends AuditFlags[]>(...flags: F): FlagBitmask<number> {return flags.reduce((acc, flag) => acc | flag, 0) as FlagBitmask<number>;}function hasPermission(mask: FlagBitmask<number>, flag: AuditFlags): boolean {return (mask & flag) === flag;}
Erklärung
1
type FlagBitmask<N extends number> = number & { readonly __brand: N };
Erstellt ein nominales Brand-Wrapper-Konstrukt um primitive Zahlen für Bitmasken-Sicherheit.
2
return flags.reduce((acc, flag) => acc | flag, 0) as ...
Führt schnelle bitweise OR-Aggregation von Flags in eine einzelne Ganzzahl durch.
3
return (mask & flag) === flag;
Führt CPU-native bitweise AND-Maskenprüfung für ultra-schnelle Zugriffsauswertung aus.