From 1872e018d1de12793e794fb45d9bbcea569706fe Mon Sep 17 00:00:00 2001 From: NeonXP Date: Wed, 4 Jan 2023 23:51:40 +0300 Subject: Added fill to factory --- factory.go | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'factory.go') diff --git a/factory.go b/factory.go index bf44525..9e94e29 100644 --- a/factory.go +++ b/factory.go @@ -1,15 +1,18 @@ package json -type NodeFactory func(typ NodeType) (Node, error) +type Factory interface { + Produce(typ NodeType) (Node, error) + Fill(n Node, value any) +} type Node interface { - String() string + ToJSON() string } type ObjectNode interface { Node - SetKeyValue(k string, v Node) - GetByKey(k string) (Node, bool) + Set(k string, v Node) + Get(k string) (Node, bool) } type ArrayNode interface { @@ -21,20 +24,14 @@ type ArrayNode interface { type StringNode interface { Node - SetString(v string) - GetString() string } type NumberNode interface { Node - SetNumber(v float64) - GetNumber() float64 } type BooleanNode interface { Node - SetBool(v bool) - GetBool() bool } type NullNode interface { -- cgit v1.2.3