diff options
author | NeonXP <i@neonxp.dev> | 2022-12-27 02:37:02 +0300 |
---|---|---|
committer | NeonXP <i@neonxp.dev> | 2022-12-27 02:40:03 +0300 |
commit | 76a7f461ebbde70ea0e3d4f9b79c08139acaee7c (patch) | |
tree | 5e6dcb05f00be5109b3465ef16a6e9169a27497e /model/node.go | |
parent | 6f1d1df79f161cfc695f74d271d689ba72c44d09 (diff) |
Completely rewritedv0.1.0
Diffstat (limited to 'model/node.go')
-rw-r--r-- | model/node.go | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/model/node.go b/model/node.go deleted file mode 100644 index fb6bae5..0000000 --- a/model/node.go +++ /dev/null @@ -1,44 +0,0 @@ -package model - -// Node of JSON tree -type Node interface { - Type() NodeType - MarshalJSON() ([]byte, error) - Set(v any) error -} - -// NewNode creates new node from value -func NewNode(value any) Node { - if value, ok := value.(Node); ok { - return value - } - switch value := value.(type) { - case string: - return &StringNode{ - Value: value, - } - case float64: - return &NumberNode{ - Value: value, - } - case int: - return &NumberNode{ - Value: float64(value), - } - case NodeObjectValue: - return &ObjectNode{ - Value: value, - Meta: make(map[string]any), - } - case NodeArrayValue: - return &ArrayNode{ - Value: value, - } - case bool: - return &BooleanNode{ - Value: value, - } - default: - return NullNode{} - } -} |