aboutsummaryrefslogtreecommitdiffstats
path: root/json.go
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2026-05-12 15:35:06 -0400
committerSam Anthony <sam@samanthony.xyz>2026-05-12 15:37:29 -0400
commit9010ebe8a581fb9db7bc6e97d40ff062fb18495f (patch)
tree4301a455762a59d4951507c8a8781e99c6f91c6d /json.go
parent329257be8d9fb05d3dcea49823acea0f878ed52c (diff)
downloadlulu-9010ebe8a581fb9db7bc6e97d40ff062fb18495f.zip
unmarshal GET /print-jobs response
Diffstat (limited to 'json.go')
-rw-r--r--json.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/json.go b/json.go
new file mode 100644
index 0000000..e200770
--- /dev/null
+++ b/json.go
@@ -0,0 +1,15 @@
+package lulu
+
+import "encoding/json"
+
+func unmarshalSliceOrVal[T any](data []byte) ([]T, error) {
+ var vs []T
+ if err := json.Unmarshal(data, &vs); err != nil {
+ var v T
+ if err := json.Unmarshal(data, &v); err != nil {
+ return nil, err
+ }
+ return []T{v}, nil
+ }
+ return vs, nil
+}