1
0
forked from rosa/hakurei

internal/pkg: record cache variant on-disk

This makes custom artifacts much less error-prone to use.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-04-21 11:35:16 +09:00
parent 852f3a9b3d
commit ceb4d26087
4 changed files with 413 additions and 9 deletions

View File

@@ -432,6 +432,12 @@ func (e InvalidKindError) Error() string {
// register is not safe for concurrent use. register must not be called after
// the first instance of [Cache] has been opened.
func register(k Kind, f IRReadFunc) {
openMu.Lock()
defer openMu.Unlock()
if opened {
panic("attempting to register after open")
}
if _, ok := irArtifact[k]; ok {
panic("attempting to register " + strconv.Itoa(int(k)) + " twice")
}