diff options
Diffstat (limited to 'model/arrayNode.go')
-rw-r--r-- | model/arrayNode.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/model/arrayNode.go b/model/arrayNode.go index 203e01c..319f223 100644 --- a/model/arrayNode.go +++ b/model/arrayNode.go @@ -30,6 +30,15 @@ func (n *ArrayNode) MarshalJSON() ([]byte, error) { }, []byte("")), nil } +func (n *ArrayNode) Set(v any) error { + val, ok := v.(NodeArrayValue) + if !ok { + return fmt.Errorf("%v is not array", v) + } + n.Value = val + return nil +} + func (n *ArrayNode) Index(idx int) (Node, error) { if len(n.Value) <= idx { return nil, fmt.Errorf("index %d out of range [0...%d]", idx, len(n.Value)-1) |