diff options
author | Björn Gustavsson <[email protected]> | 2015-10-30 09:58:58 +0100 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2015-10-30 09:58:58 +0100 |
commit | 7e9c71bfbcf57c08c863e1dc79e11fb8dfdf870f (patch) | |
tree | e140c77cb96273c63ed859a71c3c1473846b3446 /lib/stdlib/src/beam_lib.erl | |
parent | 0563f1132a4b2fbb04dcbcea51e68a7f110502f2 (diff) | |
parent | 32ba359b05658960b86f7587b61b46d1fb2021be (diff) | |
download | otp-7e9c71bfbcf57c08c863e1dc79e11fb8dfdf870f.tar.gz otp-7e9c71bfbcf57c08c863e1dc79e11fb8dfdf870f.tar.bz2 otp-7e9c71bfbcf57c08c863e1dc79e11fb8dfdf870f.zip |
Merge branch 'bjorn/stdlib/beam_lib-doc/OTP-13063' into maint
* bjorn/stdlib/beam_lib-doc/OTP-13063:
beam_lib: Document all_chunks/1 and build_module/1
Diffstat (limited to 'lib/stdlib/src/beam_lib.erl')
-rw-r--r-- | lib/stdlib/src/beam_lib.erl | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/lib/stdlib/src/beam_lib.erl b/lib/stdlib/src/beam_lib.erl index b93ce97cd3..cbbab088f4 100644 --- a/lib/stdlib/src/beam_lib.erl +++ b/lib/stdlib/src/beam_lib.erl @@ -308,6 +308,17 @@ make_crypto_key(des3_cbc=Type, String) -> <<K3:8/binary,IVec:8/binary>> = erlang:md5([First|reverse(String)]), {Type,[K1,K2,K3],IVec,8}. +-spec build_module(Chunks) -> {'ok', Binary} when + Chunks :: [{chunkid(), dataB()}], + Binary :: binary(). + +build_module(Chunks0) -> + Chunks = list_to_binary(build_chunks(Chunks0)), + Size = byte_size(Chunks), + 0 = Size rem 4, % Assertion: correct padding? + {ok, <<"FOR1", (Size+4):32, "BEAM", Chunks/binary>>}. + + %% %% Local functions %% @@ -419,12 +430,6 @@ strip_file(File) -> end end. -build_module(Chunks0) -> - Chunks = list_to_binary(build_chunks(Chunks0)), - Size = byte_size(Chunks), - 0 = Size rem 4, % Assertion: correct padding? - {ok, <<"FOR1", (Size+4):32, "BEAM", Chunks/binary>>}. - build_chunks([{Id, Data} | Chunks]) -> BId = list_to_binary(Id), Size = byte_size(Data), |