On 01/06/2017 11:34 PM, Steve D'Aprano wrote:
On Sat, 7 Jan 2017 12:03 am, Steve D'Aprano wrote:

The second hardest problem in computer science is cache invalidation.

The *hardest* problem is naming things.

After puzzling over this for three days, it suddenly hit me:

Theme = namedtuple("Theme", "vline tee corner")

DEFAULT = Theme("│  ", "├─ ", "└─ ")
BOLD = Theme("┃  ", "┣━ ", "┗━ ")
ASCII = Theme("|  ", "|- ", "+- ")

def draw_tree(tree, theme=DEFAULT):
     ...

Ya know, that looks an /awful/ lot like a collection!  Maybe even an Enum?  ;)

-- 8< -------------------------------------------------------
from aenum import Enum   # note the 'a' before the 'enum'  :)

class Theme(Enum, init='v vr llc'):
    DEFAULT = "│  ", "├─ ", "└─ "
    BOLD = "┃  ", "┣━ ", "┗━ "
    ASCII = "|  ", "|- ", "+- "

def draw_tree(tree, theme=Theme.DEFAULT):
    print(theme.v)
    print(theme.vr)
    print(theme.v)
    print(theme.llc)

draw_tree(None)
-- 8< -------------------------------------------------------

--
~Ethan~
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to