From 60299e74104bb3bb706b1b5d8a811880adae0883 Mon Sep 17 00:00:00 2001 From: Ulf Wiger Date: Mon, 18 Apr 2011 15:16:54 +0200 Subject: [PATCH] cleanup, type fixes and new rebar --- .gitignore | 3 + doc/README.md | 30 ++--- doc/ct_expand.md | 43 +++++++- doc/exprecs.md | 155 +++++++++++++++----------- doc/parse_trans.md | 219 +++++++++++++++++++++++-------------- doc/parse_trans_codegen.md | 42 +++---- doc/parse_trans_pp.md | 37 +++---- rebar | Bin 82267 -> 103832 bytes src/exprecs.erl | 2 +- src/parse_trans_pp.erl | 6 +- util/make_doc.beam | Bin 724 -> 0 bytes util/make_doc.erl | 37 ------- util/make_plt.erl | 15 --- util/releaser | 117 -------------------- util/run_test.erl | 123 --------------------- 15 files changed, 318 insertions(+), 511 deletions(-) delete mode 100644 util/make_doc.beam delete mode 100644 util/make_doc.erl delete mode 100644 util/make_plt.erl delete mode 100755 util/releaser delete mode 100644 util/run_test.erl diff --git a/.gitignore b/.gitignore index ba31a42..03a2ff5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ examples/*.beam examples/*.xf* +ebin +*~ +*/*~ .eunit diff --git a/doc/README.md b/doc/README.md index f85d0ae..8aca718 100644 --- a/doc/README.md +++ b/doc/README.md @@ -32,51 +32,45 @@ The very simplest transform we can make is one that doesn't change a thing. For convenience, we will at least print the forms. This will enlighten us as to what the forms actually look like. -
 -module(test_pt).
 
 -export([parse_transform/2]).
 
 parse_transform(Forms, _Options) ->
-io:fwrite("Forms = ~p~n", [Forms]),
-Forms.
+    io:fwrite("Forms = ~p~n", [Forms]),
+    Forms.
 
- Trying this with a very simple module: -
 -module(ex1).
 -export([add/2]).
 
 add(X,Y) ->
-X + Y.
+    X + Y.
 
- -
 1> c(ex1, [{parse_transform,test_pt}]).
 Forms = [{attribute,1,file,{"./ex1.erl",1}},
-{attribute,1,module,ex1},
-{attribute,2,export,[{add,2}]},
-{function,4,add,2,
-[{clause,4,
-[{var,4,'X'},{var,4,'Y'}],
-[],
-[{op,5,'+',{var,5,'X'},{var,5,'Y'}}]}]},
-{eof,6}]
+         {attribute,1,module,ex1},
+         {attribute,2,export,[{add,2}]},
+         {function,4,add,2,
+                   [{clause,4,
+                            [{var,4,'X'},{var,4,'Y'}],
+                            [],
+                            [{op,5,'+',{var,5,'X'},{var,5,'Y'}}]}]},
+         {eof,6}]
 {ok,ex1}
 
- -

`transform/4`

+

transform/4

diff --git a/doc/ct_expand.md b/doc/ct_expand.md index 34fcff8..23491d5 100644 --- a/doc/ct_expand.md +++ b/doc/ct_expand.md @@ -5,6 +5,7 @@ Module ct_expand

Module ct_expand

* [Description](#description) +* [Data Types](#types) * [Function Index](#index) * [Function Details](#functions) @@ -38,6 +39,39 @@ For example, the line would be expanded at compile-time to `[1,2,3,4,5]`. + +

Data Types

+ + + + + +

form()

+ + + + +
form() = any()
+ + + +

forms()

+ + + + +
forms() = [form()]
+ + + +

options()

+ + + + +
options() = [{atom(), any()}]
+ +

Function Index

@@ -45,23 +79,20 @@ would be expanded at compile-time to `[1,2,3,4,5]`.
parse_transform/2
- -

Function Details

+

Function Details

-

parse_transform/2

-`parse_transform(Forms, Options) -> any()` +
parse_transform(Forms::forms(), Options::options()) -> forms()
+

- -_Generated by EDoc, Nov 11 2010, 22:26:54._ \ No newline at end of file diff --git a/doc/exprecs.md b/doc/exprecs.md index 3d6c04d..df027c4 100644 --- a/doc/exprecs.md +++ b/doc/exprecs.md @@ -5,6 +5,7 @@ Module exprecs

Module exprecs

* [Description](#description) +* [Data Types](#types) * [Function Index](#index) * [Function Details](#functions) @@ -41,81 +42,112 @@ inserting a compiler attribute, `export_records([RecName|...])` causes this transform to lay out access functions for the exported records: -
--module(test_exprecs).
+  -module(test_exprecs).
+ 
+  -record(r, {a, b, c}).
+  -export_records([r]).
+ 
+  -export(['#new-'/1, '#info-'/1, '#info-'/2, '#pos-'/2,
+           '#is_record-'/2, '#get-'/2, '#set-'/2, '#fromlist-'/2,
+           '#new-r'/0, '#new-r'/1, '#get-r'/2, '#set-r'/2,
+           '#pos-r'/1, '#fromlist-r'/2, '#info-r'/1]).
+ 
+  '#new-'(r) -> '#new-r'().
+ 
+  '#info-'(RecName) -> '#info-'(RecName, fields).
+ 
+  '#info-'(r, Info) -> '#info-r'(Info).
+ 
+  '#pos-'(r, Attr) -> '#pos-r'(Attr).
+ 
+  '#is_record-'(r, Rec)
+      when tuple_size(Rec) == 3, element(1, Rec) == r ->
+      true;
+  '#is_record-'(_, _) -> false.
+ 
+  '#get-'(Attrs, Rec) when is_record(Rec, r) ->
+      '#get-r'(Attrs, Rec).
+ 
+  '#set-'(Vals, Rec) when is_record(Rec, r) ->
+      '#set-r'(Vals, Rec).
+ 
+  '#fromlist-'(Vals, Rec) when is_record(Rec, r) ->
+      '#fromlist-r'(Vals, Rec).
+ 
+  '#new-r'() -> #r{}.
+ 
+  '#new-r'(Vals) -> '#set-r'(Vals, #r{}).
+ 
+  '#get-r'(Attrs, R) when is_list(Attrs) ->
+      ['#get-r'(A, R) || A <- Attrs];
+  '#get-r'(a, R) -> R#r.a;
+  '#get-r'(b, R) -> R#r.b;
+  '#get-r'(c, R) -> R#r.c;
+  '#get-r'(Attr, R) ->
+      erlang:error(bad_record_op, ['#get-r', Attr, R]).
+ 
+  '#set-r'(Vals, Rec) ->
+      F = fun ([], R, _F1) -> R;
+              ([{a, V} | T], R, F1) -> F1(T, R#r{a = V}, F1);
+              ([{b, V} | T], R, F1) -> F1(T, R#r{b = V}, F1);
+              ([{c, V} | T], R, F1) -> F1(T, R#r{c = V}, F1);
+              (Vs, R, _) ->
+                  erlang:error(bad_record_op, ['#set-r', Vs, R])
+          end,
+      F(Vals, Rec, F).
+ 
+  '#fromlist-r'(Vals, Rec) ->
+      AttrNames = [{a, 2}, {b, 3}, {c, 4}],
+      F = fun ([], R, _F1) -> R;
+              ([{H, Pos} | T], R, F1) ->
+                  case lists:keyfind(H, 1, Vals) of
+                    false -> F1(T, R, F1);
+                    {_, Val} -> F1(T, setelement(Pos, R, Val), F1)
+                  end
+          end,
+      F(AttrNames, Rec, F).
+ 
+  '#pos-r'(a) -> 2;
+  '#pos-r'(b) -> 3;
+  '#pos-r'(c) -> 4;
+  '#pos-r'(_) -> 0.
+ 
+  '#info-r'(fields) -> record_info(fields, r);
+  '#info-r'(size) -> record_info(size, r).
+  
--record(r, {a, b, c}). --export_records([r]). --export(['#new-'/1, '#info-'/1, '#info-'/2, '#pos-'/2, -'#is_record-'/2, '#get-'/2, '#set-'/2, '#fromlist-'/2, -'#new-r'/0, '#new-r'/1, '#get-r'/2, '#set-r'/2, -'#pos-r'/1, '#fromlist-r'/2, '#info-r'/1]). +

Data Types

-'#new-'(r) -> '#new-r'(). -'#info-'(RecName) -> '#info-'(RecName, fields). -'#info-'(r, Info) -> '#info-r'(Info). -'#pos-'(r, Attr) -> '#pos-r'(Attr). -'#is_record-'(r, Rec) -when tuple_size(Rec) == 3, element(1, Rec) == r -> -true; -'#is_record-'(_, _) -> false. +

form()

-'#get-'(Attrs, Rec) when is_record(Rec, r) -> -'#get-r'(Attrs, Rec). -'#set-'(Vals, Rec) when is_record(Rec, r) -> -'#set-r'(Vals, Rec). -'#fromlist-'(Vals, Rec) when is_record(Rec, r) -> -'#fromlist-r'(Vals, Rec). -'#new-r'() -> #r{}. +
form() = any()
-'#new-r'(Vals) -> '#set-r'(Vals, #r{}). -'#get-r'(Attrs, R) when is_list(Attrs) -> -['#get-r'(A, R) || A <- Attrs]; -'#get-r'(a, R) -> R#r.a; -'#get-r'(b, R) -> R#r.b; -'#get-r'(c, R) -> R#r.c; -'#get-r'(Attr, R) -> -erlang:error(bad_record_op, ['#get-r', Attr, R]). -'#set-r'(Vals, Rec) -> -F = fun ([], R, _F1) -> R; -([{a, V} | T], R, F1) -> F1(T, R#r{a = V}, F1); -([{b, V} | T], R, F1) -> F1(T, R#r{b = V}, F1); -([{c, V} | T], R, F1) -> F1(T, R#r{c = V}, F1); -(Vs, R, _) -> -erlang:error(bad_record_op, ['#set-r', Vs, R]) -end, -F(Vals, Rec, F). +

forms()

-'#fromlist-r'(Vals, Rec) -> -AttrNames = [{a, 2}, {b, 3}, {c, 4}], -F = fun ([], R, _F1) -> R; -([{H, Pos} | T], R, F1) -> -case lists:keyfind(H, 1, Vals) of -false -> F1(T, R, F1); -{_, Val} -> F1(T, setelement(Pos, R, Val), F1) -end -end, -F(AttrNames, Rec, F). -'#pos-r'(a) -> 2; -'#pos-r'(b) -> 3; -'#pos-r'(c) -> 4; -'#pos-r'(_) -> 0. -'#info-r'(fields) -> record_info(fields, r); -'#info-r'(size) -> record_info(size, r). - + +
forms() = [form()]
+ + + +

options()

+ + + + +
options() = [{atom(), any()}]

Function Index

@@ -125,23 +157,20 @@ F(AttrNames, Rec, F).
parse_transform/2
- -

Function Details

+

Function Details

-

parse_transform/2

-`parse_transform(Forms, Options) -> any()` +
parse_transform(Forms::forms(), Options::options()) -> forms()
+

- -_Generated by EDoc, Nov 11 2010, 22:26:54._ \ No newline at end of file diff --git a/doc/parse_trans.md b/doc/parse_trans.md index 7259972..73099da 100644 --- a/doc/parse_trans.md +++ b/doc/parse_trans.md @@ -5,6 +5,7 @@ Module parse_trans

Module parse_trans

* [Description](#description) +* [Data Types](#types) * [Function Index](#index) * [Function Details](#functions) @@ -24,6 +25,75 @@ __Authors:__ : Ulf Wiger ([`ulf.wiger@erlang-consulting.com`](mailto:ulf.wiger@e ... + +

Data Types

+ + + + + +

form()

+ + + + +
form() = any()
+ + + +

forms()

+ + + + +
forms() = [form()]
+ + + +

insp_f()

+ + + + +
insp_f() = fun((type(), form(), #context{}, A) -> {boolean(), A})
+ + + +

options()

+ + + + +
options() = [{atom(), any()}]
+ + + +

type()

+ + + + +
type() = atom()
+ + + +

xform_f_df()

+ + + + +
xform_f_df() = fun((type(), form(), #context{}, Acc) -> {form(), Acc} | {forms(), form(), forms(), Acc})
+ + + +

xform_f_rec()

+ + + + +
xform_f_rec() = fun((type(), form(), #context{}, Acc) -> {form(), boolean(), Acc} | {forms(), form(), forms(), boolean(), Acc})
+ +

Function Index

@@ -44,30 +114,26 @@ Erlang source code, storing it in the file Out. - -

Function Details

+

Function Details

-

context/2

-context(X1::Attr, Context) -> any()* `Attr = module | function | arity | options` +
context(X1::Attr, Context) -> any()
+ - -Accessor function for the Context record. - - +Accessor function for the Context record.

depth_first/4

@@ -75,77 +141,75 @@ Accessor function for the Context record. -`depth_first(Fun, Acc, Forms, Options) -> any()` +
depth_first(Fun::xform_f_df(), Acc, Forms::forms(), Options::options()) -> {forms(), Acc} | {error, list()}
+

-

do_depth_first/4

-`do_depth_first(F, Acc, Forms, Context) -> any()` +
do_depth_first(F::xform_f_df(), Acc::term(), Forms::forms(), Context::#context{}) -> {forms(), term()}
+

-

do_insert_forms/4

-`do_insert_forms(X1, Insert, Forms, Context) -> any()` +
do_insert_forms(X1::above | below, Insert::forms(), Forms::forms(), Context::#context{}) -> forms()
+

-

do_inspect/4

-`do_inspect(F, Acc, Forms, Context) -> any()` +
do_inspect(F::insp_f(), Acc::term(), Forms::forms(), Context::#context{}) -> term()
+

-

do_transform/4

-`do_transform(F, Acc, Forms, Context) -> any()` +
do_transform(F::xform_f_rec(), Acc::term(), Forms::forms(), Context::#context{}) -> {forms(), term()}
+

-

error/3

-error(R::Reason, F::Form, I::Info) -> throw()* `Info = [{Key, Value}]` +
error(R::Reason, F::Form, I::Info) -> throw()
+ - -Used to report errors detected during the parse transform. - - +Used to report errors detected during the parse transform.

format_error/1

@@ -153,26 +217,26 @@ Used to report errors detected during the parse transform. -`format_error(X1) -> any()` +
format_error(X1::{atom(), term()}) -> iolist()
+

-

function_exists/3

-function_exists(Fname::atom(), Arity::integer(), Forms) -> boolean() +
function_exists(Fname::atom(), Arity::integer(), Forms) -> boolean()
+

-Checks whether the given function is defined in Forms. - +Checks whether the given function is defined in Forms.

get_attribute/2

@@ -180,15 +244,13 @@ Checks whether the given function is defined in Forms. -get_attribute(A, Forms) -> any()* `A = atom()` +
get_attribute(A, Forms) -> any()
+ - -Returns the value of the first occurence of attribute A. - - +Returns the value of the first occurence of attribute A.

get_file/1

@@ -196,14 +258,14 @@ Returns the value of the first occurence of attribute A. -get_file(Forms) -> string() +
get_file(Forms) -> string()
+

-Returns the name of the file being compiled. - +Returns the name of the file being compiled.

get_module/1

@@ -211,14 +273,14 @@ Returns the name of the file being compiled. -get_module(Forms) -> atom() +
get_module(Forms) -> atom()
+

-Returns the name of the module being compiled. - +Returns the name of the module being compiled.

get_orig_syntax_tree/1

@@ -226,7 +288,9 @@ Returns the name of the module being compiled. -get_orig_syntax_tree(File) -> Forms +
get_orig_syntax_tree(File) -> Forms
+

+ @@ -236,9 +300,7 @@ Returns the name of the module being compiled. Fetches a Syntax Tree representing the code before pre-processing, that is, including record and macro definitions. Note that macro definitions must be syntactically complete forms (this function -uses epp_dodger). - - +uses epp_dodger).

get_pos/1

@@ -246,15 +308,15 @@ uses epp_dodger). -get_pos(I::list()) -> integer() +
get_pos(I::list()) -> integer()
+

+ Tries to retrieve the line number from an erl_syntax form. Returns a -(very high) dummy number if not successful. - - +(very high) dummy number if not successful.

initial_context/2

@@ -262,7 +324,9 @@ Tries to retrieve the line number from an erl_syntax form. Returns a -initial_context(Forms, Options) -> #context{} +
initial_context(Forms, Options) -> #context{}
+

+ @@ -270,9 +334,7 @@ Tries to retrieve the line number from an erl_syntax form. Returns a Initializes a context record. When traversing through the form list, the context is updated to reflect the current function and arity. Static elements in the context are the file name, the module -name and the options passed to the transform function. - - +name and the options passed to the transform function.

inspect/4

@@ -280,15 +342,13 @@ name and the options passed to the transform function. -inspect(F::Fun, Acc::Forms, Forms::Acc, Options) -> NewAcc* `Fun = function()` +
inspect(F::Fun, Acc::Forms, Forms::Acc, Options) -> NewAcc
+ - -Equvalent to do_inspect(Fun,Acc,Forms,initial_context(Forms,Options)). - - +Equvalent to do_inspect(Fun,Acc,Forms,initial_context(Forms,Options)).

optionally_pretty_print/3

@@ -296,27 +356,27 @@ Equvalent to do_inspect(Fun,Acc,Forms,initial_context(Forms,Options)). -`optionally_pretty_print(Result, Options, Context) -> any()` +
optionally_pretty_print(Result::forms(), Options::options(), Context::#context{}) -> ok
+

-

pp_beam/1

-pp_beam(Beam::filename()) -> string() | {error, Reason} +
pp_beam(Beam::file:filename()) -> string() | {error, Reason}
+

+ Reads debug_info from the beam file Beam and returns a string containing -the pretty-printed corresponding erlang source code. - - +the pretty-printed corresponding erlang source code.

pp_beam/2

@@ -324,15 +384,15 @@ the pretty-printed corresponding erlang source code. -pp_beam(Beam::filename(), Out::filename()) -> ok | {error, Reason} +
pp_beam(Beam::filename(), Out::filename()) -> ok | {error, Reason}
+

+ Reads debug_info from the beam file Beam and pretty-prints it as -Erlang source code, storing it in the file Out. - - +Erlang source code, storing it in the file Out.

pp_src/2

@@ -340,22 +400,24 @@ Erlang source code, storing it in the file Out. -pp_src(Res::Forms, Out::filename()) -> ok +
pp_src(Res::Forms, Out::filename()) -> ok
+

+ Pretty-prints the erlang source code corresponding to Forms into Out - -

revert/1

-revert(Tree) -> Forms +
revert(Tree) -> Forms
+

+ @@ -364,9 +426,7 @@ Reverts back from Syntax Tools format to Erlang forms. Note that the Erlang forms are a subset of the Syntax Tools syntax tree, so this function is safe to call even on a list of -regular Erlang forms. - - +regular Erlang forms.

top/3

@@ -374,25 +434,22 @@ regular Erlang forms. -`top(F, Forms, Options) -> any()` +
top(F::function(), Forms::forms(), Options::list()) -> forms() | {error, term()}
+

-

transform/4

-transform(Fun, Acc, Forms, Options) -> {TransformedForms, NewAcc}* `Fun = function()` -* `Options = [{Key, Value}]` +
transform(Fun, Acc, Forms, Options) -> {TransformedForms, NewAcc}
+ - -Makes one pass - -_Generated by EDoc, Nov 11 2010, 22:26:54._ \ No newline at end of file +Makes one pass \ No newline at end of file diff --git a/doc/parse_trans_codegen.md b/doc/parse_trans_codegen.md index 29eef55..163e948 100644 --- a/doc/parse_trans_codegen.md +++ b/doc/parse_trans_codegen.md @@ -34,22 +34,22 @@ and converts the corresponding erlang code to a data structure representing the abstract form of that code. - -

Function Details

+

Function Details

-

parse_transform/2

-parse_transform(Forms, Options) -> NewForms +
parse_transform(Forms, Options) -> NewForms
+

+ @@ -137,21 +137,17 @@ bound at compile-time), using the construct `{'$var', V}`, where `V` is a bound variable in the scope of the call to `gen_function/2`. Example: -
-gen(Name, X) ->
-codegen:gen_function(Name, fun(L) -> lists:member({'$var',X}, L) end).
-
- + gen(Name, X) -> + codegen:gen_function(Name, fun(L) -> lists:member({'$var',X}, L) end). + After transformation, calling `gen(contains_17, 17)` will yield the abstract form corresponding to: -
-contains_17(L) ->
-lists:member(17, L).
-
- + contains_17(L) -> + lists:member(17, L). + @@ -166,20 +162,14 @@ It is possible to inject abstract forms, using the construct the scope of the call to `gen_function/2`. Example: -
-gen(Name, F) ->
-codegen:gen_function(Name, fun(X) -> X =:= {'$form',F} end).
-
- + gen(Name, F) -> + codegen:gen_function(Name, fun(X) -> X =:= {'$form',F} end). + After transformation, calling `gen(is_foo, {atom,0,foo})` will yield the abstract form corresponding to: -
-is_foo(X) ->
-X =:= foo.
-
- - -_Generated by EDoc, Nov 11 2010, 22:26:54._ \ No newline at end of file + is_foo(X) -> + X =:= foo. + \ No newline at end of file diff --git a/doc/parse_trans_pp.md b/doc/parse_trans_pp.md index d273f95..5a6eb9f 100644 --- a/doc/parse_trans_pp.md +++ b/doc/parse_trans_pp.md @@ -27,11 +27,9 @@ The function `main/1` is called from escript, and can be used to pretty-print debug info in a .beam file from a Linux shell. Using e.g. the following bash alias: -
-alias pp='escript $PARSE_TRANS_ROOT/ebin/parse_trans_pp.beam'
-
- + alias pp='escript $PARSE_TRANS_ROOT/ebin/parse_trans_pp.beam' + a file could be pretty-printed using the following command: @@ -49,42 +47,40 @@ Reads debug_info from the beam file Beam and pretty-prints it as Erlang source code, storing it in the file Out.pp_src/2Pretty-prints the erlang source code corresponding to Forms into Out. - -

Function Details

+

Function Details

-

main/1

-`main(X1) -> any()` +
main(X1::[string()]) -> any()
+

-

pp_beam/1

-pp_beam(Beam::filename()) -> string() | {error, Reason} +
pp_beam(Beam::filename()) -> string() | {error, Reason}
+

+ Reads debug_info from the beam file Beam and returns a string containing -the pretty-printed corresponding erlang source code. - - +the pretty-printed corresponding erlang source code.

pp_beam/2

@@ -92,15 +88,15 @@ the pretty-printed corresponding erlang source code. -pp_beam(Beam::filename(), Out::filename()) -> ok | {error, Reason} +
pp_beam(Beam::filename(), Out::filename()) -> ok | {error, Reason}
+

+ Reads debug_info from the beam file Beam and pretty-prints it as -Erlang source code, storing it in the file Out. - - +Erlang source code, storing it in the file Out.

pp_src/2

@@ -108,11 +104,10 @@ Erlang source code, storing it in the file Out. -pp_src(Res::Forms, Out::filename()) -> ok +
pp_src(Res::Forms, Out::filename()) -> ok
+

+ Pretty-prints the erlang source code corresponding to Forms into Out - - -_Generated by EDoc, Nov 11 2010, 22:26:54._ \ No newline at end of file diff --git a/rebar b/rebar index 2f66b5a164f5ad60504f6dbf4a0eca25265cf1f4..0c9c987ad1653d751e9ffd7e97cc7120e50c8fad 100755 GIT binary patch delta 98215 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�kfA1g2x~iVo4Wkf5@vD8F? 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 CO1c;T diff --git a/src/exprecs.erl b/src/exprecs.erl index bf96998..7900c6c 100755 --- a/src/exprecs.erl +++ b/src/exprecs.erl @@ -323,7 +323,7 @@ generate_accessors(L, Acc) -> end, Acc#pass1.exports))] ++ version_accessors(L, Acc). get_flds(Rname, #pass1{records = Rs}) -> - {value, {_, Flds}} = lists:keysearch(Rname, 1, Rs), + {_, Flds} = lists:keyfind(Rname, 1, Rs), lists:map( fun({record_field,_, {atom,_,N}}) -> N; ({record_field,_, {atom,_,N}, _}) -> N diff --git a/src/parse_trans_pp.erl b/src/parse_trans_pp.erl index 15b750e..e30a74d 100644 --- a/src/parse_trans_pp.erl +++ b/src/parse_trans_pp.erl @@ -60,7 +60,7 @@ main([F]) -> %% %% @doc Pretty-prints the erlang source code corresponding to Forms into Out %% --spec pp_src(parse_trans:forms(), filename:filename()) -> +-spec pp_src(parse_trans:forms(), file:filename()) -> ok. pp_src(Res, F) -> Str = [io_lib:fwrite("~s~n", @@ -74,7 +74,7 @@ pp_src(Res, F) -> %% Reads debug_info from the beam file Beam and returns a string containing %% the pretty-printed corresponding erlang source code. %% @end --spec pp_beam(filename:filename()) -> ok | {error, any()}. +-spec pp_beam(file:filename()) -> ok | {error, any()}. pp_beam(Beam) -> case pp_beam_to_str(Beam) of {ok, Str} -> @@ -90,7 +90,7 @@ pp_beam(Beam) -> %% Erlang source code, storing it in the file Out. %% @end %% --spec pp_beam(filename:filename(), filename:filename()) -> ok | {error,any()}. +-spec pp_beam(file:filename(), file:filename()) -> ok | {error,any()}. pp_beam(F, Out) -> case pp_beam_to_str(F) of {ok, Str} -> diff --git a/util/make_doc.beam b/util/make_doc.beam deleted file mode 100644 index 1630df93834c8d1fdc6d6bcb56da90acf3e8464e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 724 zcma)4%Wl&^6uskdoj@uusaU`QMLa~=#Gz`tLvjeA6beL5SfY4hPvZAj<4Icy302|; zSR%xRU*HQ^utDM>0W1Cjv1P#>D@YL=xYC*Xm~$WYo!bxhuLBq#ZuYzPyGmpLu#c$M zGnVjiAbgYK(I}WK`B+Jomkm}FY2-5%iQM8cW%^o)5Z8NuB>J#gl|a0Q8{DD<`*M_5H_RkAGgf_v6Bo7w50udK<^R z-F%8fv*MeYUlWC1O{sHeNCO~20QJ$G-Ql=97zD7q%c{PA7$negLXmN2ei+TTbo!&7 zGmDh7w02Fk#9RfDOyJ7D*v?!rD<9BATb8MBh e*x9N>Ddy7W32gjV2j|Z#ZR10XyOUDkN5gML53ErD diff --git a/util/make_doc.erl b/util/make_doc.erl deleted file mode 100644 index 909a679..0000000 --- a/util/make_doc.erl +++ /dev/null @@ -1,37 +0,0 @@ -%%% ---------------------------------------------------------------------------- -%%% Copyright (c) 2009, Erlang Training and Consulting Ltd. -%%% All rights reserved. -%%% -%%% Redistribution and use in source and binary forms, with or without -%%% modification, are permitted provided that the following conditions are met: -%%% * Redistributions of source code must retain the above copyright -%%% notice, this list of conditions and the following disclaimer. -%%% * Redistributions in binary form must reproduce the above copyright -%%% notice, this list of conditions and the following disclaimer in the -%%% documentation and/or other materials provided with the distribution. -%%% * Neither the name of Erlang Training and Consulting Ltd. nor the -%%% names of its contributors may be used to endorse or promote products -%%% derived from this software without specific prior written permission. -%%% -%%% THIS SOFTWARE IS PROVIDED BY Erlang Training and Consulting Ltd. ''AS IS'' -%%% AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -%%% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -%%% ARE DISCLAIMED. IN NO EVENT SHALL Erlang Training and Consulting Ltd. BE -%%% LIABLE SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -%%% BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -%%% WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -%%% OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -%%% ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -%%% ---------------------------------------------------------------------------- - -%%% @author Oscar Hellström --module(make_doc). --export([edoc/0]). - -edoc() -> - try - edoc:application(?THIS_APP, "./", [{doc, "doc/"}]) - catch _:_ -> - halt(1) - end, - halt(0). diff --git a/util/make_plt.erl b/util/make_plt.erl deleted file mode 100644 index 9e1e718..0000000 --- a/util/make_plt.erl +++ /dev/null @@ -1,15 +0,0 @@ --module(make_plt). --export([add/2]). - - - -add(Apps, Plt) -> - Dirs = [filename:join(code:lib_dir(App), "ebin") || App <- Apps], - io:fwrite("generating custom plt file ~s~n", [Plt]), - dialyzer:run([{output_plt, Plt}, - {analysis_type, plt_add}, - {from, byte_code}, - {erlang_mode, true}, - {files_rec, Dirs}]), - io:fwrite("...done~n", []), - init:stop(). diff --git a/util/releaser b/util/releaser deleted file mode 100755 index 4a96155..0000000 --- a/util/releaser +++ /dev/null @@ -1,117 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Copyright (c) 2009, Erlang Training and Consulting Ltd. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of Erlang Training and Consulting Ltd. nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY Erlang Training and Consulting Ltd. ''AS IS'' -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL Erlang Training and Consulting Ltd. BE -# LIABLE SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# ---------------------------------------------------------------------------- -# Script for making a release of this app. Or any program in hg really. Check -# the Makefile target release for how to use it. - -NAME=$1 -VSN=$2 - -yesno() { - prompt=$1 - while true; do - read -p "$1 [Y/n] " answer - case "x$answer" in - "x") - return 0 - ;; - "xY") - return 0 - ;; - "xy") - return 0 - ;; - "xN") - return 1 - ;; - "xn") - return 1 - ;; - *) - ;; - esac - done -} - -get_version() { - while true; do - read -p "What is the version of the release? [$VSN] " release_vsn - - if [ "$release_vsn" = "" ]; then - release_vsn=$VSN - fi - - if $(echo "$TAGS" | grep -q "^$release_vsn\$"); then - if yesno "A tag exists for version $release_vsn, is this correct?"; then - break - fi - else - if yesno "A tag doesn't exist for version $release_vsn, should one be created?"; then - hg tag $release_vsn - fi - break - fi - done - echo $release_vsn -} - -if ! hg identify 1>/dev/null 2>&1; then - echo "No hg repository here..." - exit 1 -fi - -if ! [ "$(hg identify | awk '{print $2};')" = "tip" ]; then - if ! yesno "Repository is not at tip, do you want to continue?"; then - exit 1 - fi -fi - -if ! yesno "Did the compilation run without warnings?"; then - "Try again..." - exit 1 -fi - -if ! yesno "Is the changelog up to date?"; then - "Try again..." - exit 1 -fi - -if ! yesno "Did dialyzer run without warnings?"; then - "Try again..." - exit 1 -fi - -TAGS=$(hg tags | awk '{print $1 };' | grep -v "^tip$") -LATEST_TAG=$(echo "$TAGS" | head -n 1) - -RELEASE_VSN=$(get_version) -echo "Creating a release for $NAME-$RELEASE_VSN now." -archive="./$NAME-$RELEASE_VSN.tar.gz" -if [ -e $archive ]; then - echo "$archive exists, giving up." - exit 1 -fi -hg archive -t tgz -X ".hg*" $archive diff --git a/util/run_test.erl b/util/run_test.erl deleted file mode 100644 index 0cfa7cb..0000000 --- a/util/run_test.erl +++ /dev/null @@ -1,123 +0,0 @@ -%%% ---------------------------------------------------------------------------- -%%% Copyright (c) 2009, Erlang Training and Consulting Ltd. -%%% All rights reserved. -%%% -%%% Redistribution and use in source and binary forms, with or without -%%% modification, are permitted provided that the following conditions are met: -%%% * Redistributions of source code must retain the above copyright -%%% notice, this list of conditions and the following disclaimer. -%%% * Redistributions in binary form must reproduce the above copyright -%%% notice, this list of conditions and the following disclaimer in the -%%% documentation and/or other materials provided with the distribution. -%%% * Neither the name of Erlang Training and Consulting Ltd. nor the -%%% names of its contributors may be used to endorse or promote products -%%% derived from this software without specific prior written permission. -%%% -%%% THIS SOFTWARE IS PROVIDED BY Erlang Training and Consulting Ltd. ''AS IS'' -%%% AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -%%% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -%%% ARE DISCLAIMED. IN NO EVENT SHALL Erlang Training and Consulting Ltd. BE -%%% LIABLE SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -%%% BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -%%% WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -%%% OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -%%% ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -%%% ---------------------------------------------------------------------------- - -%%% @author Oscar Hellström --module(run_test). --export([run/0]). - --include_lib("eunit/include/eunit.hrl"). --include_lib("stdlib/include/ms_transform.hrl"). - --define(TEST_LOG, "test/error_logger.log"). --define(SASL_LOG, "test/sasl.log"). --define(FILE_NAME(MODULE), - "cover_report/" ++ atom_to_list(MODULE) ++ ".html"). - - -run() -> - Modules = get_modules(), - ok = cover_compile(Modules), - start_logging(), - Result = eunit:test(?MODULE, [verbose]), - filelib:ensure_dir("cover_report/index.html"), - html_report(Modules), - write_report(Modules), - stop_logging(), - io:format("Cover report in cover_report/index.html~n"), - io:format("Test logs in ~s and ~s~n", [?TEST_LOG, ?SASL_LOG]), - if - Result =:= ok -> halt(0); - Result =/= ok -> halt(1) - end. - -start_logging() -> - application:load(sasl), - application:set_env(sasl, sasl_error_logger, {file, ?SASL_LOG}), - file:delete(?TEST_LOG), - file:delete(?SASL_LOG), - error_logger:tty(false), - error_logger:logfile({open, ?TEST_LOG}), - application:start(sasl). - -stop_logging() -> - error_logger:logfile(close), - application:stop(sasl). - -html_report([Module | Modules]) -> - cover:analyse_to_file(Module, ?FILE_NAME(Module), [html]), - html_report(Modules); -html_report([]) -> - ok. - -write_report(Modules) -> - {TotalPercentage, ModulesPersentage} = percentage(Modules, 0, 0, []), - file:write_file("cover_report/index.html", - [ - "\nCover report index\n" - "\n" - "

Cover report for ", atom_to_list(?THIS_APP), "

" - "Total coverage: ", integer_to_list(TotalPercentage), "%" - "

Cover for individual modules

\n" - "
" - ]). - -percentage([Module | Modules], TotCovered, TotLines, Percentages) -> - {ok, Analasys} = cover:analyse(Module, coverage, line), - {Covered, Lines} = lists:foldl(fun({_, {C, _}}, {Covered, Lines}) -> - {C + Covered, Lines + 1} - end, {0, 0}, Analasys), - Percent = (Covered * 100) div Lines, - NewPercentages = [{Module, Percent} | Percentages], - percentage(Modules, Covered + TotCovered, Lines + TotLines, NewPercentages); -percentage([], Covered, Lines, Percentages) -> - {(Covered * 100) div Lines, Percentages}. - -get_modules() -> - application:load(?THIS_APP), - {ok, Modules} = application:get_key(?THIS_APP, modules), - Modules. - -cover_compile([Module | Modules]) -> - {ok, Module} = cover:compile_beam(Module), - cover_compile(Modules); -cover_compile([]) -> - ok. - -%%% Eunit functions -application_test_() -> - {application, ?THIS_APP}.