diff options
| author | darkuss <darkussdelta@gmail.com> | 2026-08-22 01:58:37 +0200 |
|---|---|---|
| committer | darkuss <darkussdelta@gmail.com> | 2026-08-22 01:58:37 +0200 |
| commit | 8f32fd58cafe677c07d9ed9fff84f6e255156d37 (patch) | |
| tree | a5de06ffb2c0a8b878c8a563ec8cee692efc98ac /src/util.ts | |
| parent | 5ac62cc1a4d9a5f50ea26d5bc1afb0fbf95da23c (diff) | |
holy shit i'm finally done
Diffstat (limited to 'src/util.ts')
| -rw-r--r-- | src/util.ts | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/util.ts b/src/util.ts new file mode 100644 index 0000000..f6420b9 --- /dev/null +++ b/src/util.ts @@ -0,0 +1,16 @@ +export class MutableValue<T> { + private inner: T; + + constructor(inner: T) { + this.inner = inner; + } + + get value() { + return this.inner + } + + public deriveNew(mutator: (self: T) => T): MutableValue<T> { + this.inner = mutator(this.inner); + return new MutableValue(this.inner); + } +} |
