comparison src/ast_dump.rs @ 3:326d7f2a94d4

Remove useless abstraction of function name as Expr.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Tue, 31 May 2016 02:36:24 +0100
parents 5fc7c2790d8c
children f27a4aee9dfa
comparison
equal deleted inserted replaced
2:5fc7c2790d8c 3:326d7f2a94d4
79 for statement in body { 79 for statement in body {
80 statements.push(statement.to_string(indent + 1)); 80 statements.push(statement.to_string(indent + 1));
81 } 81 }
82 statements.join("\n") 82 statements.join("\n")
83 }), 83 }),
84 Statement::FunctionDef(Expr::Name(name), arguments, body) => format!("{}def {}({}):\n{}", make_indent(indent), name, { 84 Statement::FunctionDef(name, arguments, body) => format!("{}def {}({}):\n{}", make_indent(indent), name, {
85 let mut args = vec!(); 85 let mut args = vec!();
86 for arg in arguments { 86 for arg in arguments {
87 args.push(arg.to_string()); 87 args.push(arg.to_string());
88 } 88 }
89 args.join(", ") 89 args.join(", ")
92 for statement in body { 92 for statement in body {
93 statements.push(statement.to_string(indent + 1)); 93 statements.push(statement.to_string(indent + 1));
94 } 94 }
95 statements.join("\n") 95 statements.join("\n")
96 }), 96 }),
97 Statement::FunctionDef(_, _, _) => format!("error!"),
98 Statement::Global(names) => format!("{}global {}", make_indent(indent), names.join(", ")), 97 Statement::Global(names) => format!("{}global {}", make_indent(indent), names.join(", ")),
99 Statement::If(test, body, orelse) => format!("{}if {}:\n{}", make_indent(indent), test.to_string(), { 98 Statement::If(test, body, orelse) => format!("{}if {}:\n{}", make_indent(indent), test.to_string(), {
100 let mut statements = vec!(); 99 let mut statements = vec!();
101 for arg in body { 100 for arg in body {
102 statements.push(arg.to_string(indent + 1)); 101 statements.push(arg.to_string(indent + 1));