Artifact 29c78902c837093747735116c1dba08bb3157f68:
- File
tree.py
- 2011-09-13 20:08:17 - part of checkin [029fd48614] on branch feature/abc - Added a name parameter to the Tree class that will prove helpful in generating the score (user: brian) [annotate]
- 2011-10-11 15:31:53 - part of checkin [192b8b1639] on branch develop - Merged in rewrite of core functionality (user: brian) [annotate]
- 2011-10-20 18:44:05 - part of checkin [ba64e400ba] on branch ply - Yay, first alpha release. program supports syncing and basic section/subsection ordering. (user: brian) [annotate]
import pdb
class Tree():
def __init__(self, name):
self.nodes = []
self.name = name
def traverse_depth_first(self):
all_nodes = []
for node in self.nodes:
if isinstance(node, Node):
all_nodes.append(node)
elif isinstance(node, Tree):
# pdb.set_trace()
all_nodes.extend(node.traverse_depth_first())
return all_nodes
def __str__(self):
return str(self.__unicode__())
def __unicode__(self):
return self.nodes
class Node():
def __init__(self, parent, data):
self.parent = parent
self.data = data
def __str__(self):
return str(self.__unicode__())
def __unicode__(self):
return self.data