aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/system/system.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-04-10 20:39:06 +0900
committerOphestra <cat@gensokyo.uk>2026-04-10 20:47:30 +0900
commit560cb626a1a8f7d4bfca5d30f262cc90fb5d4608 (patch)
tree0be44e6cf70bae8b608b6a12efc06d66d1f2e5d9 /internal/system/system.go
parentc33a6a5b7ee130370aeeebf6635977415115f7da (diff)
hst: remove enablement json adapter
The go116 behaviour of built-in new function makes this cleaner. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/system/system.go')
-rw-r--r--internal/system/system.go16
1 files changed, 9 insertions, 7 deletions
diff --git a/internal/system/system.go b/internal/system/system.go
index f518975c..1462f818 100644
--- a/internal/system/system.go
+++ b/internal/system/system.go
@@ -20,21 +20,21 @@ const (
)
// Criteria specifies types of Op to revert.
-type Criteria hst.Enablement
+type Criteria hst.Enablements
-func (ec *Criteria) hasType(t hst.Enablement) bool {
+func (ec *Criteria) hasType(t hst.Enablements) bool {
// nil criteria: revert everything except User
if ec == nil {
return t != User
}
- return hst.Enablement(*ec)&t != 0
+ return hst.Enablements(*ec)&t != 0
}
// Op is a reversible system operation.
type Op interface {
// Type returns [Op]'s enablement type, for matching a revert criteria.
- Type() hst.Enablement
+ Type() hst.Enablements
apply(sys *I) error
revert(sys *I, ec *Criteria) error
@@ -44,8 +44,8 @@ type Op interface {
String() string
}
-// TypeString extends [hst.Enablement.String] to support [User] and [Process].
-func TypeString(e hst.Enablement) string {
+// TypeString extends [hst.Enablements] to support [User] and [Process].
+func TypeString(e hst.Enablements) string {
switch e {
case User:
return "user"
@@ -110,7 +110,9 @@ func (sys *I) Equal(target *I) bool {
return true
}
-// Commit applies all [Op] held by [I] and reverts all successful [Op] on first error encountered.
+// Commit applies all [Op] held by [I] and reverts all successful [Op] on first
+// error encountered.
+//
// Commit must not be called more than once.
func (sys *I) Commit() error {
if sys.committed {