From b7b0919dfe55fb17054ca306ebd31707ac6dd9e1 Mon Sep 17 00:00:00 2001 From: yuin Date: Sat, 12 Feb 2022 19:01:55 +0900 Subject: [PATCH] Add AddMeta --- ast/block.go | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/ast/block.go b/ast/block.go index 4a504a8..02e9d51 100644 --- a/ast/block.go +++ b/ast/block.go @@ -87,7 +87,20 @@ func (n *Document) Meta() map[string]interface{} { // SetMeta sets given metadata to this document. func (n *Document) SetMeta(meta map[string]interface{}) { - n.meta = meta + if n.meta == nil { + n.meta = map[string]interface{}{} + } + for k, v := range meta { + n.meta[k] = v + } +} + +// AddMeta adds given metadata to this document. +func (n *Document) AddMeta(key string, value interface{}) { + if n.meta == nil { + n.meta = map[string]interface{}{} + } + n.meta[key] = value } // NewDocument returns a new Document node.