dbab49936d
Sophia Tests / tests (push) Successful in 48m54s
A few references to oracles still remain, but they have been removed as a feature, at least. Reviewed-on: #985 Reviewed-by: Ulf Wiger <ulfwiger@qpq.swiss> Co-authored-by: Craig Everett <zxq9@zxq9.com> Co-committed-by: Craig Everett <zxq9@zxq9.com>
29 lines
616 B
Erlang
29 lines
616 B
Erlang
-module(so_ast).
|
|
-vsn("9.0.0").
|
|
|
|
-export([int/2,
|
|
line/1,
|
|
pp/1,
|
|
pp_typed/1,
|
|
symbol/2,
|
|
symbol_name/1
|
|
]).
|
|
|
|
|
|
symbol(Line, Chars) -> {symbol, Line, Chars}.
|
|
int(Line, Int) -> {'Int', Line, Int}.
|
|
|
|
line({symbol, Line, _}) -> Line.
|
|
|
|
symbol_name({symbol, _, Name}) -> Name.
|
|
|
|
pp(Ast) ->
|
|
String = prettypr:format(so_pretty:decls(Ast, [])),
|
|
io:format("Ast:\n~s\n", [String]).
|
|
|
|
pp_typed(TypedAst) ->
|
|
%% io:format("Typed tree:\n~p\n",[TypedAst]),
|
|
String = prettypr:format(so_pretty:decls(TypedAst, [show_generated])),
|
|
io:format("Type ast:\n~s\n",[String]).
|
|
|