From da973668bcfee7cba0aa6e0c498fee4aa1b24cce Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Mon, 23 Sep 2013 09:45:00 +0200 Subject: Make forms a separate output from diameter_codegen Instead of being output as a consequence of a debug option. --- lib/diameter/src/compiler/diameter_codegen.erl | 10 +++++----- lib/diameter/src/compiler/diameter_make.erl | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) (limited to 'lib/diameter/src') diff --git a/lib/diameter/src/compiler/diameter_codegen.erl b/lib/diameter/src/compiler/diameter_codegen.erl index e606e61052..325a37e20d 100644 --- a/lib/diameter/src/compiler/diameter_codegen.erl +++ b/lib/diameter/src/compiler/diameter_codegen.erl @@ -53,12 +53,11 @@ when File :: string(), ParseD :: orddict:orddict(), Opts :: list(), - Mode :: dict | erl | hrl. + Mode :: dict | forms | erl | hrl. from_dict(File, ParseD, Opts, Mode) -> Outdir = proplists:get_value(outdir, Opts, "."), putr(verbose, lists:member(verbose, Opts)), - putr(debug, lists:member(debug, Opts)), codegen(File, ParseD, Outdir, Mode). %% Optional reports when running verbosely. @@ -115,10 +114,11 @@ gen(dict, ParseD, _Mod, Path) -> gen(hrl, ParseD, Mod, Path) -> write(Path ++ ".hrl", gen_hrl(Mod, ParseD)); +gen(forms, ParseD, Mod, Path) -> + write_term(Path ++ ".F", [erl_forms(Mod, ParseD)]); + gen(erl, ParseD, Mod, Path) -> - Forms = erl_forms(Mod, ParseD), - getr(debug) andalso write_term(Path ++ ".F", [Forms]), - write(Path ++ ".erl", [header(), prettypr(Forms), $\n]). + write(Path ++ ".erl", [header(), prettypr(erl_forms(Mod, ParseD)), $\n]). write(Path, T) -> write(Path, "~s", T). diff --git a/lib/diameter/src/compiler/diameter_make.erl b/lib/diameter/src/compiler/diameter_make.erl index f77273d3a5..e4486973dd 100644 --- a/lib/diameter/src/compiler/diameter_make.erl +++ b/lib/diameter/src/compiler/diameter_make.erl @@ -61,7 +61,8 @@ codec(File, Opts) -> make(File, Opts, Dict, - [dict || lists:member(debug, Opts)] ++ [erl, hrl]); + lists:append([[dict, forms] || lists:member(debug, Opts)]) + ++ [erl, hrl]); {error, _} = E -> E end. -- cgit v1.2.3