Recursively compile this widget as well as all of its children to HTML.

        :returns: HTML string representation of this widget.

def compile(self):
        """
        Recursively compile this widget as well as all of its children to HTML.

        :returns: HTML string representation of this widget.
        """
        self.content = "".join(map(lambda x: x.compile(), self.children))
        return self._generate_html()