diff options
author | flywind <43030857+xflywind@users.noreply.github.com> | 2020-11-22 04:26:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-21 12:26:51 -0800 |
commit | 3040f0550534848f61aa87d42e195e3fb5a70262 (patch) | |
tree | 3334f969ae445a7a0c9e6e84e24687491e982925 /lib/pure | |
parent | dd57d46f2f3a35878f48a1cd19bc85541f85c463 (diff) | |
download | Nim-3040f0550534848f61aa87d42e195e3fb5a70262.tar.gz |
xmltree minor improvement (#16085)
Diffstat (limited to 'lib/pure')
-rw-r--r-- | lib/pure/xmltree.nim | 90 |
1 files changed, 3 insertions, 87 deletions
diff --git a/lib/pure/xmltree.nim b/lib/pure/xmltree.nim index df8db1bb7..6ad90b042 100644 --- a/lib/pure/xmltree.nim +++ b/lib/pure/xmltree.nim @@ -312,7 +312,7 @@ proc add*(father, son: XmlNode) {.inline.} = add(father.s, son) proc insert*(father, son: XmlNode, index: int) {.inline.} = - ## Insert the child `son` to a given position in `father`. + ## Inserts the child `son` to a given position in `father`. ## ## `father` and `son` must be of `xnElement` kind. ## @@ -335,7 +335,7 @@ proc insert*(father, son: XmlNode, index: int) {.inline.} = insert(father.s, son, len(father.s)) proc delete*(n: XmlNode, i: Natural) = - ## Delete the `i`'th child of `n`. + ## Deletes the `i`'th child of `n`. ## ## See also: ## * `add proc <#add,XmlNode,XmlNode>`_ @@ -388,7 +388,7 @@ proc `[]`*(n: var XmlNode, i: int): var XmlNode {.inline.} = result = n.s[i] proc clear*(n: var XmlNode) = - ## Recursively clear all children of an XmlNode. + ## Recursively clears all children of an XmlNode. ## ## .. code-block:: ## var g = newElement("myTag") @@ -788,87 +788,3 @@ macro `<>`*(x: untyped): untyped = ## <a href="http://nim-lang.org">Nim rules.</a> ## result = xmlConstructor(x) - - -when isMainModule: - var - x: XmlNode - - x = <>a(href = "http://nim-lang.org", newText("Nim rules.")) - assert $x == """<a href="http://nim-lang.org">Nim rules.</a>""" - - x = <>outer(<>inner()) - assert $x == """<outer> - <inner /> -</outer>""" - - x = <>outer(<>middle(<>inner1(), <>inner2(), <>inner3(), <>inner4())) - assert $x == """<outer> - <middle> - <inner1 /> - <inner2 /> - <inner3 /> - <inner4 /> - </middle> -</outer>""" - - x = <>l0(<>l1(<>l2(<>l3(<>l4())))) - assert $x == """<l0> - <l1> - <l2> - <l3> - <l4 /> - </l3> - </l2> - </l1> -</l0>""" - - x = <>l0(<>l1p1(), <>l1p2(), <>l1p3()) - assert $x == """<l0> - <l1p1 /> - <l1p2 /> - <l1p3 /> -</l0>""" - - x = <>l0(<>l1(<>l2p1(), <>l2p2())) - assert $x == """<l0> - <l1> - <l2p1 /> - <l2p2 /> - </l1> -</l0>""" - - x = <>l0(<>l1(<>l2_1(), <>l2_2(<>l3_1(), <>l3_2(), <>l3_3(<>l4_1(), <>l4_2(), <>l4_3())), <>l2_3(), <>l2_4())) - assert $x == """<l0> - <l1> - <l2_1 /> - <l2_2> - <l3_1 /> - <l3_2 /> - <l3_3> - <l4_1 /> - <l4_2 /> - <l4_3 /> - </l3_3> - </l2_2> - <l2_3 /> - <l2_4 /> - </l1> -</l0>""" - - let - innermost = newElement("innermost") - middle = newXmlTree("middle", [innermost]) - innermost.add newText("innermost text") - x = newXmlTree("outer", [middle]) - assert $x == """<outer> - <middle> - <innermost>innermost text</innermost> - </middle> -</outer>""" - - x = newElement("myTag") - x.add newText("my text") - x.add newElement("sonTag") - x.add newEntity("my entity") - assert $x == "<myTag>my text<sonTag />&my entity;</myTag>" |