[Python-Dev] Pretty-printing 2to3 Nodes

David Wolever wolever at cs.toronto.edu
Thu Mar 20 06:04:01 CET 2008


Would anyone be averse to changing pytree.Node's __repr__ so it 
includes the name of the name of the symbol the node represents?
The only downside is that it makes the __reprs__ longer... But I 
think its worth the length:
Node(313:simple_stmt, [Node(298:import_name, [Leaf(1, 'import'), Node 
(279:dotted_as_name, [Node(281:dotted_name, [Leaf(1, 'foo'), Leaf(23, 
'.'), Leaf(1, 'bar')]), Leaf(1, 'as'), Leaf(1, 'bang')])]), Leaf(4, 
'\n')])
OR just names:
Node(import_name, [Leaf(1, 'import'), Node(dotted_as_name, [Node 
(dotted_name, [Leaf(1, 'foo'), Leaf(23, '.'), Leaf(1, 'bar')]), Leaf 
(1, 'as'), Leaf(1, 'bang')])])
OR the original:
Node(313, [Node(298, [Leaf(1, 'import'), Node(279, [Node(281, [Leaf 
(1, 'foo'), Leaf(23, '.'), Leaf(1, 'bar')]), Leaf(1, 'as'), Leaf(1, 
'bang')])]), Leaf(4, '\n')])


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /