Packages
gpb
4.14.2
5.0.0
4.21.7
4.21.6
4.21.5
4.21.4
4.21.3
4.21.2
4.21.1
4.21.0
4.20.0
4.19.9
4.19.8
4.19.7
4.19.6
4.19.5
4.19.4
4.19.3
4.19.2
4.19.1
4.19.0
4.18.0
4.17.7
4.17.6
4.17.5
4.17.3
4.17.2
4.17.1
4.17.0
4.16.2
4.16.1
4.16.0
4.15.2
4.15.1
4.14.2
4.14.1
4.14.0
4.13.0
4.12.0
4.11.2
4.11.1
4.11.0
4.10.6
4.10.5
4.10.4
4.10.3
4.10.2
4.10.1
4.10.0
4.9.3
4.9.2
4.9.1
4.9.0
4.8.0
4.7.3
4.7.2
4.7.1
4.7.0
4.6.0
4.5.1
4.5.0
4.4.1
4.4.0
4.3.3
4.3.2
4.3.1
4.3.0
4.2.3
4.2.2
4.2.1
4.2.0
4.1.9
4.1.8
4.1.7
4.1.6
4.1.5
4.1.4
4.1.3
4.1.2
4.1.1
4.1.0
4.0.2
4.0.1
4.0.0
3.28.1
3.28.0
3.27.7
3.27.6
3.27.5
3.27.4
3.27.3
3.27.2
3.27.1
3.27.0
3.26.8
3.26.7
3.26.6
3.26.5
3.26.4
3.26.3
3.26.2
3.26.1
3.26.0
3.25.2
3.25.1
3.25.0
3.24.4
3.24.3
3.24.2
3.24.1
3.24.0
3.23.2
3.23.1
3.23.0
3.22.5
3.22.4
3.22.3
3.22.2
3.22.1
3.22.0
3.21.3
3.21.2
3.21.1
3.21.0
3.20.3
3.20.2
3.20.0
3.19.0
3.18.10
3.18.9
3.18.8
3.18.7
3.18.6
3.18.5
3.18.4
3.18.3
3.18.2
3.18.1
3.18.0
3.17.13
3.17.12
3.17.11
3.17.10
3.17.9
3.17.8
3.17.5
3.17.4
3.17.3
3.17.2
3.17.1
3.17.0
3.16.0
3.15.0
3.14.0
3.13.0
3.12.2
3.12.1
3.12.0
3.11.0
A compiler for Google protocol buffer definitions files for Erlang.
Current section
Files
Jump to
Current section
Files
build/prepend_edoc_autogenerated
#!/usr/bin/env escript
%% -*- erlang -*-
-define(HEAD_LINE, "@doc automatically generated scanner").
-define(ALL_AUTO_STR_FORMAT, "%%" ++ ?HEAD_LINE ++ "
%% @private
%% @end
-file(\"~s\", 0).
").
write_file_whithout_change_file_info(FileName, Str) ->
OldFileInfo = case file:read_file_info(FileName) of
{ok, Info} ->
Info;
{error, Reason} ->
file_err(read_file_info, FileName, Reason)
end,
case file:write_file(FileName, Str) of
ok ->
ok;
{error, Reason2} ->
file_err(write_file, FileName, Reason2)
end,
case file:write_file_info(FileName, OldFileInfo)of
ok ->
ok;
{error, Reason3} ->
file_err(write_file_info, FileName, Reason3)
end.
file_err(FunName, FileName, Reason) ->
io:format(standard_error, "file:~p(~s) execute failed!, Reason: ~s~n",
[FunName, FileName, file:format_error(Reason)]),
halt(1).
main([ErlFile, OrigFile]) ->
case file:read_file(ErlFile) of
{ok, ErlStr} ->
[Line|_] = binary:split(ErlStr, <<"\n">>),
case re:run(Line, ?HEAD_LINE) of
'nomatch' ->
WriteString = io_lib:format(?ALL_AUTO_STR_FORMAT,
[OrigFile]) ++ ErlStr,
write_file_whithout_change_file_info(ErlFile, WriteString);
_ ->
ok
end;
{error, Reason} ->
file_err(read_file, ErlFile, Reason)
end.