summaryrefslogtreecommitdiffstats
path: root/core/payload.go
diff options
context:
space:
mode:
authorbt <bt@rctt.net>2026-06-04 17:13:39 +0200
committerbt <bt@rctt.net>2026-06-04 17:13:39 +0200
commit6628f924ba4aefa8f8361ebc252fb225718359c2 (patch)
treef1337371a66546c5d87908b5fac682ff6b1b92f2 /core/payload.go
parented2621c17f353878ea86ce2c16cac7cd04fb4c6a (diff)
downloadsolec-0.6.0.tar.gz
solec-0.6.0.zip
[common] Add channels list queryv0.6.0
Diffstat (limited to 'core/payload.go')
-rw-r--r--core/payload.go49
1 files changed, 49 insertions, 0 deletions
diff --git a/core/payload.go b/core/payload.go
index be9d844..aad21ee 100644
--- a/core/payload.go
+++ b/core/payload.go
@@ -226,6 +226,55 @@ func DecodeHistory(buf io.Reader) (History, error) {
return h, nil
}
+type List struct {
+ Count int64
+ Offset int64
+}
+
+func (l List) Wrap() (PayloadType, []any) {
+ return PayloadList, []any{
+ l.Count,
+ l.Offset,
+ }
+}
+
+func DecodeList(buf io.Reader) (List, error) {
+ var l List
+
+ err := decodeNumeric(buf, &l.Count)
+ if err != nil {
+ return l, err
+ }
+
+ err = decodeNumeric(buf, &l.Offset)
+ if err != nil {
+ return l, err
+ }
+
+ return l, nil
+}
+
+type ListItem struct {
+ Address string
+}
+
+func (l ListItem) Wrap() (PayloadType, []any) {
+ return PayloadListItem, []any{
+ l.Address,
+ }
+}
+
+func DecodeListItem(buf io.Reader) (ListItem, error) {
+ var l ListItem
+
+ err := decodeString(buf, &l.Address)
+ if err != nil {
+ return l, err
+ }
+
+ return l, nil
+}
+
type Test struct {
Num1 uint8
Time1 time.Time