Browse Source

Fix parse_transform to recurse the AST more

pull/4/head
Andrew Thompson 14 years ago
parent
commit
c172c0e8d2
1 changed files with 5 additions and 10 deletions
  1. +5
    -10
      src/lager_transform.erl

+ 5
- 10
src/lager_transform.erl View File

@ -103,17 +103,12 @@ transform_statement({call, Line, {remote, Line1, {atom, Line2, boston_lager},
end, end,
transform_statement({call, Line, {remote, Line1, {atom, Line2, lager}, transform_statement({call, Line, {remote, Line1, {atom, Line2, lager},
{atom, Line3, Severity}}, NewArgs}); {atom, Line3, Severity}}, NewArgs});
transform_statement({'case', Line, Expr, Clauses}) ->
{'case', Line, Expr, walk_clauses([], Clauses)};
transform_statement({'if', Line, Clauses}) ->
{'if', Line, walk_clauses([], Clauses)};
transform_statement({block, Line, Body}) ->
{block, Line, walk_body([], Body)};
transform_statement({lc, Line, Expression, Generator}) ->
{lc, Line, transform_statement(Expression), Generator};
transform_statement({match, Line, Var, Expression}) ->
{match, Line, Var, transform_statement(Expression)};
transform_statement(Stmt) when is_tuple(Stmt) ->
list_to_tuple(transform_statement(tuple_to_list(Stmt)));
transform_statement(Stmt) when is_list(Stmt) ->
[transform_statement(S) || S <- Stmt];
transform_statement(Stmt) -> transform_statement(Stmt) ->
%io:format("Statement ~p~n", [Stmt]),
Stmt. Stmt.

Loading…
Cancel
Save