def append(self, node):
        """Append an element or string as child node.
        
        :param node: the node to append; can be an `Element`, `Fragment`, or a
                     `Stream`, or a Python string or number
        """
        if isinstance(node, (Stream, Element, basestring, int, float, long)):
            # For objects of a known/primitive type, we avoid the check for
            # whether it is iterable for better performance
            self.children.append(node)
        elif isinstance(node, Fragment):
            self.children.extend(node.children)
        elif node is not None:
            try:
                for child in node:
                    self.append(child)
            except TypeError:
                self.children.append(node)
dataset/ETHPy150Open timonwong/OmniMarkupPreviewer/OmniMarkupLib/Renderers/libs/python2/genshi/builder.py/Fragment.append/original