From 2a0a294ce959711da2304071ff7f67e7a83fa195 Mon Sep 17 00:00:00 2001 From: john Date: Fri, 14 Sep 2018 14:00:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E8=BF=9Bgparser=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0NewUnsafe/Append=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- g/encoding/gparser/gparser.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/g/encoding/gparser/gparser.go b/g/encoding/gparser/gparser.go index 75d4b490c..a65d1f828 100644 --- a/g/encoding/gparser/gparser.go +++ b/g/encoding/gparser/gparser.go @@ -22,6 +22,14 @@ func New (value interface{}, safe...bool) *Parser { return &Parser{gjson.New(value, safe...)} } +// 非并发安全Parser对象 +func NewUnsafe (value...interface{}) *Parser { + if len(value) > 0 { + return &Parser{gjson.New(value[0], false)} + } + return &Parser{gjson.New(nil, false)} +} + func Load (path string) (*Parser, error) { if j, e := gjson.Load(path); e == nil { return &Parser{j}, nil @@ -144,6 +152,11 @@ func (p *Parser) Set(pattern string, value interface{}) error { return p.json.Set(pattern, value) } +// 指定pattern追加元素 +func (j *Parser) Append(pattern string, value interface{}) error { + return j.json.Append(pattern, value) +} + // 动态删除变量节点 func (p *Parser) Remove(pattern string) error { return p.json.Remove(pattern)