def __str__(self):  
ret = "<STR_LIT>"<EOL>if self._db:<EOL><INDENT>ret = self._prt(name=self.root_name, lparent=-<NUM_LIT:1>, sep="<STR_LIT>", pre1="<STR_LIT>", pre2="<STR_LIT>")<EOL><DEDENT>return ret.encode("<STR_LIT:utf-8>") if sys.hexversion < <NUM_LIT> else ret<EOL>
Return a string with the tree 'pretty printed' as a character-based structure.

Only node names are shown, nodes with data are marked with an asterisk
(:code:`*`).  For example:

    >>> from __future__ import print_function
    >>> import ptrie
    >>> tobj = ptrie.Trie()
    >>> tobj.add_nodes([
    ...     {'name':'root.branch1', 'data':5},
    ...     {'name':'root.branch2', 'data':[]},
    ...     {'name':'root.branch1.leaf1', 'data':[]},
    ...     {'name':'root.branch1.leaf2', 'data':'Hello world!'}
    ... ])
    >>> print(tobj)
    root
    ├branch1 (*)
    │├leaf1
    │└leaf2 (*)
    └branch2

:rtype: Unicode string