aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/state/data.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-10-30 18:43:55 +0900
committerOphestra <cat@gensokyo.uk>2025-10-30 18:43:55 +0900
commitebdcff1049fb979405677a823a47410df7ee7c4f (patch)
treea5a14d409e4bc9f3b4b2e2c15f6c23de5ad0755f /internal/state/data.go
parent46c5ce493638ea2d034bbbdb9449e93b66d0330f (diff)
internal/store: rename from state
This reduces collision with local variable names, and generally makes sense for the new store package, since it no longer specifies the state struct. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/state/data.go')
-rw-r--r--internal/state/data.go52
1 files changed, 0 insertions, 52 deletions
diff --git a/internal/state/data.go b/internal/state/data.go
deleted file mode 100644
index a680c96b..00000000
--- a/internal/state/data.go
+++ /dev/null
@@ -1,52 +0,0 @@
-package state
-
-import (
- "encoding/gob"
- "fmt"
- "io"
- "os"
-
- "hakurei.app/hst"
-)
-
-// entryEncode encodes [hst.State] into [io.Writer] with the state entry header.
-// entryEncode does not validate the embedded [hst.Config] value.
-//
-// A non-nil error returned by entryEncode is of type [hst.AppError].
-func entryEncode(w io.Writer, s *hst.State) error {
- if err := entryWriteHeader(w, s.Enablements.Unwrap()); err != nil {
- return &hst.AppError{Step: "encode state header", Err: err}
- } else if err = gob.NewEncoder(w).Encode(s); err != nil {
- return &hst.AppError{Step: "encode state body", Err: err}
- } else {
- return nil
- }
-}
-
-// entryDecodeHeader calls entryReadHeader, returning [hst.AppError] for a non-nil error.
-func entryDecodeHeader(r io.Reader) (hst.Enablement, error) {
- if et, err := entryReadHeader(r); err != nil {
- return 0, &hst.AppError{Step: "decode state header", Err: err}
- } else {
- return et, nil
- }
-}
-
-// entryDecode decodes [hst.State] from [io.Reader] and stores the result in the value pointed to by p.
-// entryDecode validates the embedded [hst.Config] value.
-//
-// A non-nil error returned by entryDecode is of type [hst.AppError].
-func entryDecode(r io.Reader, p *hst.State) (hst.Enablement, error) {
- if et, err := entryDecodeHeader(r); err != nil {
- return et, err
- } else if err = gob.NewDecoder(r).Decode(&p); err != nil {
- return et, &hst.AppError{Step: "decode state body", Err: err}
- } else if err = p.Config.Validate(); err != nil {
- return et, err
- } else if p.Enablements.Unwrap() != et {
- return et, &hst.AppError{Step: "validate state enablement", Err: os.ErrInvalid,
- Msg: fmt.Sprintf("state entry %s has unexpected enablement byte %#x, %#x", p.ID.String(), byte(p.Enablements.Unwrap()), byte(et))}
- } else {
- return et, nil
- }
-}