Replace self by parent.

var elem = new HTMLTag("li")
elem.add_outer(new HTMLTag("ul"))
assert elem.write_to_string == "<ul><li></li></ul>"

Property definitions

html $ HTMLTag :: add_outer
	# Replace `self` by `parent`.
	#
	#     var elem = new HTMLTag("li")
	#     elem.add_outer(new HTMLTag("ul"))
	#     assert elem.write_to_string == "<ul><li></li></ul>"
	fun add_outer(parent: HTMLTag) do
		# copy self in new object
                var child = new HTMLTag(self.tag)
                child.attrs = self.attrs
                child.classes = self.classes
                child.css_props = self.css_props
                child.children = self.children
                # add copy in parent children elements
                parent.children.add(child)
                # replace self by parent
                self.tag = parent.tag
                self.attrs = parent.attrs
                self.classes = parent.classes
                self.css_props = parent.css_props
                self.is_void = parent.is_void
                self.children = parent.children
        end
lib/html/html.nit:198,2--219,11