aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/pkg/ir.go
AgeCommit message (Collapse)Author
2026-04-23internal/pkg: record cache variant on-diskOphestra
This makes custom artifacts much less error-prone to use. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-17internal/pkg: move IR primitives out of cacheOphestra
These are memory management and caching primitives. Having them as part of Cache is cumbersome and requires a temporary directory that is never used. This change isolates them from Cache to enable independent use. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-23internal/pkg/ir: raise string limit to 16 MiBOphestra
A string holds "current" hakurei source code. For now the compressed tarball is 4.9 MiB long. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-17internal/pkg/ir: document reason for avoiding ident cacheOphestra
This got brought up earlier today as a potential optimisation. This change documents why it is not viable, and hopefully clears up some performance implications of using IRDecoder, namely that its decoding costs do not amortise. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-07internal/pkg: skip duplicate earlyOphestra
This significantly increases IR generation performance. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-05internal/pkg: standardise artifact IROphestra
This should hopefully provide good separation between the artifact curing backend implementation and the (still work in progress) language. Making the IR parseable also guarantees uniqueness of the representation. Signed-off-by: Ophestra <cat@gensokyo.uk>