Chromium Code Reviews
DescriptionDisentangle AstNode::Name and AstNode::ShortName.
The Name function is used for pretty printing except that for a few
node types we rely on a specific name for implementation correctness.
Overriding the pretty printing function to get out a type name, or a
variable name, or an operator symbol name, is risky.
1. Code that relies on the semantics of the name will break if the
pretty name is changed.
2. Pretty printing is less useful. For instance, LoadLocalNode just
prints the variable name (twice, once as the AST constructor and
once in quotes as the variable name). This is confusing if the
variable happens to have the same name as one of the other pretty
names, e.g., args or seq.
Now, there is a virtual function to get the pretty name but classes do
not change it to communicate other information (type names, variable
names, operator names).
BUG=
R=regis@google.com, srdjan@google.com
Committed: https://code.google.com/p/dart/source/detail?r=27244
Patch Set 1 #
Total comments: 3
Patch Set 2 : Incorporated review comments. #
Messages
Total messages: 6 (0 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||