Skip to content

Commit d6757f8

Browse files
committed
Add estdlib funcs
Signed-off-by: Peter M <[email protected]>
1 parent 8e09fa9 commit d6757f8

File tree

2 files changed

+146
-1
lines changed

2 files changed

+146
-1
lines changed

priv/funcs.txt

Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ alisp_stdlib:remove-if-not/1
3737
alisp_stdlib:remove-if/1
3838
alisp_stdlib:tuple/1
3939
alisp_stdlib:tuplep/1
40+
application:get_env/2
41+
application:get_env/3
42+
application:module_info/0
43+
application:module_info/1
4044
arepl:module_info/0
4145
arepl:module_info/1
4246
arepl:start/0
@@ -113,10 +117,12 @@ calendar:system_time_to_universal_time/2
113117
code:all_available/0
114118
code:all_loaded/0
115119
code:ensure_loaded/1
120+
code:is_loaded/1
116121
code:load_abs/1
117122
code:load_binary/3
118123
code:module_info/0
119124
code:module_info/1
125+
code:which/1
120126
console:flush/0
121127
console:flush/1
122128
console:module_info/0
@@ -131,6 +137,16 @@ crypto:hash/2
131137
crypto:module_info/0
132138
crypto:module_info/1
133139
crypto:strong_rand_bytes/1
140+
dist_util:cancel_timer/1
141+
dist_util:handshake_other_started/1
142+
dist_util:handshake_we_started/1
143+
dist_util:module_info/0
144+
dist_util:module_info/1
145+
dist_util:net_ticker_spawn_options/0
146+
dist_util:reset_timer/1
147+
dist_util:shutdown/3
148+
dist_util:shutdown/4
149+
dist_util:start_timer/1
134150
elixir_env:to_caller/1
135151
elixir_erl_pass:no_parens_remote/2
136152
emscripten:module_info/0
@@ -241,6 +257,19 @@ epmd:module_info/0
241257
epmd:module_info/1
242258
epmd:start_link/1
243259
epmd:terminate/2
260+
erl_epmd:code_change/3
261+
erl_epmd:handle_call/3
262+
erl_epmd:handle_cast/2
263+
erl_epmd:handle_info/2
264+
erl_epmd:init/1
265+
erl_epmd:module_info/0
266+
erl_epmd:module_info/1
267+
erl_epmd:names/1
268+
erl_epmd:port_please/2
269+
erl_epmd:register_node/2
270+
erl_epmd:start_link/0
271+
erl_epmd:stop/0
272+
erl_epmd:terminate/2
244273
erlang:!/2
245274
erlang:*/2
246275
erlang:++/2
@@ -309,13 +338,16 @@ erlang:floor/1
309338
erlang:fmul/2
310339
erlang:fnegate/1
311340
erlang:fsub/2
341+
erlang:fun_info/1
312342
erlang:fun_info/2
313343
erlang:fun_to_list/1
314344
erlang:function_exported/3
315345
erlang:garbage_collect/0
316346
erlang:garbage_collect/1
317347
erlang:get/0
318348
erlang:get/1
349+
erlang:get_cookie/0
350+
erlang:get_cookie/1
319351
erlang:get_module_info/1
320352
erlang:get_module_info/2
321353
erlang:group_leader/0
@@ -328,6 +360,7 @@ erlang:integer_to_list/1
328360
erlang:integer_to_list/2
329361
erlang:iolist_size/1
330362
erlang:iolist_to_binary/1
363+
erlang:is_alive/0
331364
erlang:is_atom/1
332365
erlang:is_binary/1
333366
erlang:is_bitstring/1
@@ -341,6 +374,7 @@ erlang:is_map_key/2
341374
erlang:is_number/1
342375
erlang:is_pid/1
343376
erlang:is_process_alive/1
377+
erlang:is_record/2
344378
erlang:is_reference/1
345379
erlang:is_tuple/1
346380
erlang:length/1
@@ -388,6 +422,8 @@ erlang:round/1
388422
erlang:self/0
389423
erlang:send/2
390424
erlang:send_after/3
425+
erlang:set_cookie/1
426+
erlang:set_cookie/2
391427
erlang:setelement/3
392428
erlang:setnode/2
393429
erlang:setnode/3
@@ -396,6 +432,8 @@ erlang:spawn/1
396432
erlang:spawn/3
397433
erlang:spawn_link/1
398434
erlang:spawn_link/3
435+
erlang:spawn_monitor/1
436+
erlang:spawn_monitor/3
399437
erlang:spawn_opt/2
400438
erlang:spawn_opt/4
401439
erlang:split_binary/2
@@ -411,11 +449,16 @@ erlang:tl/1
411449
erlang:trunc/1
412450
erlang:tuple_size/1
413451
erlang:tuple_to_list/1
452+
erlang:unique_integer/0
453+
erlang:unique_integer/1
414454
erlang:universaltime/0
415455
erlang:unlink/1
416456
erlang:unregister/1
417457
erlang:whereis/1
418458
erlang:xor/2
459+
erpc:execute_call/4
460+
erpc:module_info/0
461+
erpc:module_info/1
419462
erts_debug:flat_size/1
420463
erts_debug:module_info/0
421464
erts_debug:module_info/1
@@ -509,6 +552,8 @@ ets:delete/2
509552
ets:insert/2
510553
ets:lookup/2
511554
ets:lookup_element/3
555+
ets:module_info/0
556+
ets:module_info/1
512557
ets:new/2
513558
ets:update_counter/3
514559
ets:update_counter/4
@@ -686,25 +731,55 @@ i2c:write_bytes/2
686731
i2c:write_bytes/3
687732
i2c:write_bytes/4
688733
inet:close/1
734+
inet:getaddr/2
689735
inet:module_info/0
690736
inet:module_info/1
691737
inet:peername/1
692738
inet:port/1
693739
inet:sockname/1
740+
init:boot/1
741+
init:get_argument/1
742+
init:get_plain_arguments/0
743+
init:module_info/0
744+
init:module_info/1
745+
init:notify_when_started/1
746+
io:columns/0
747+
io:columns/1
694748
io:format/1
695749
io:format/2
750+
io:format/3
751+
io:fwrite/1
752+
io:fwrite/2
753+
io:fwrite/3
696754
io:get_line/1
755+
io:getopts/0
756+
io:getopts/1
697757
io:module_info/0
698758
io:module_info/1
759+
io:printable_range/0
699760
io:put_chars/1
700761
io:put_chars/2
762+
io:requests/1
763+
io:scan_erl_exprs/4
764+
io_lib:chars_length/1
701765
io_lib:format/2
766+
io_lib:fwrite/2
702767
io_lib:latin1_char_list/1
703768
io_lib:module_info/0
704769
io_lib:module_info/1
770+
io_lib:printable_list/1
771+
io_lib:write/1
772+
io_lib:write_atom/1
773+
io_lib:write_string/1
774+
io_lib:write_string/2
705775
json_encoder:encode/1
706776
json_encoder:module_info/0
707777
json_encoder:module_info/1
778+
kernel:init/1
779+
kernel:module_info/0
780+
kernel:module_info/1
781+
kernel:start/2
782+
kernel:stop/1
708783
ledc:channel_config/1
709784
ledc:fade_func_install/1
710785
ledc:fade_func_uninstall/0
@@ -722,10 +797,14 @@ ledc:timer_config/1
722797
ledc:update_duty/2
723798
lists:all/2
724799
lists:any/2
800+
lists:append/1
801+
lists:append/2
725802
lists:delete/2
803+
lists:dropwhile/2
726804
lists:duplicate/2
727805
lists:filter/2
728806
lists:filtermap/2
807+
lists:flatmap/2
729808
lists:flatten/1
730809
lists:foldl/3
731810
lists:foldr/3
@@ -735,12 +814,15 @@ lists:keydelete/3
735814
lists:keyfind/3
736815
lists:keymember/3
737816
lists:keyreplace/4
817+
lists:keysort/2
738818
lists:keystore/4
739819
lists:keytake/3
740820
lists:last/1
741821
lists:map/2
742822
lists:mapfoldl/3
743823
lists:member/2
824+
lists:merge/2
825+
lists:merge/3
744826
lists:module_info/0
745827
lists:module_info/1
746828
lists:nth/2
@@ -870,8 +952,34 @@ mdns:stop/1
870952
mdns:terminate/2
871953
net:getaddrinfo/1
872954
net:getaddrinfo/2
955+
net:gethostname/0
873956
net:module_info/0
874957
net:module_info/1
958+
net_kernel:epmd_module/0
959+
net_kernel:get_cookie/0
960+
net_kernel:get_cookie/1
961+
net_kernel:get_net_ticktime/0
962+
net_kernel:get_state/0
963+
net_kernel:handle_call/3
964+
net_kernel:handle_cast/2
965+
net_kernel:handle_info/2
966+
net_kernel:init/1
967+
net_kernel:mark_nodeup/4
968+
net_kernel:mark_pending/4
969+
net_kernel:module_info/0
970+
net_kernel:module_info/1
971+
net_kernel:set_cookie/1
972+
net_kernel:set_cookie/2
973+
net_kernel:start/2
974+
net_kernel:start_link/1
975+
net_kernel:stop/0
976+
net_kernel:terminate/2
977+
net_kernel_sup:init/1
978+
net_kernel_sup:module_info/0
979+
net_kernel_sup:module_info/1
980+
net_kernel_sup:start/1
981+
net_kernel_sup:start_link/1
982+
net_kernel_sup:stop/0
875983
network:handle_call/3
876984
network:handle_cast/2
877985
network:handle_continue/2
@@ -995,6 +1103,7 @@ socket:accept/2
9951103
socket:bind/2
9961104
socket:close/1
9971105
socket:connect/2
1106+
socket:getopt/2
9981107
socket:listen/1
9991108
socket:listen/2
10001109
socket:module_info/0
@@ -1019,6 +1128,34 @@ socket:sendto/3
10191128
socket:setopt/3
10201129
socket:shutdown/2
10211130
socket:sockname/1
1131+
socket_dist:accept/1
1132+
socket_dist:accept_connection/5
1133+
socket_dist:address/0
1134+
socket_dist:close/1
1135+
socket_dist:listen/1
1136+
socket_dist:module_info/0
1137+
socket_dist:module_info/1
1138+
socket_dist:select/1
1139+
socket_dist:setup/5
1140+
socket_dist_controller:address/2
1141+
socket_dist_controller:code_change/3
1142+
socket_dist_controller:getll/1
1143+
socket_dist_controller:getstat/1
1144+
socket_dist_controller:handle_call/3
1145+
socket_dist_controller:handle_cast/2
1146+
socket_dist_controller:handle_info/2
1147+
socket_dist_controller:handshake_complete/3
1148+
socket_dist_controller:init/1
1149+
socket_dist_controller:module_info/0
1150+
socket_dist_controller:module_info/1
1151+
socket_dist_controller:recv/3
1152+
socket_dist_controller:send/2
1153+
socket_dist_controller:setopts_post_nodeup/1
1154+
socket_dist_controller:setopts_pre_nodeup/1
1155+
socket_dist_controller:start/1
1156+
socket_dist_controller:supervisor/2
1157+
socket_dist_controller:terminate/2
1158+
socket_dist_controller:tick/1
10221159
spi:close/1
10231160
spi:module_info/0
10241161
spi:module_info/1
@@ -1057,6 +1194,7 @@ ssl:stop/0
10571194
ssl:terminate/2
10581195
string:find/2
10591196
string:find/3
1197+
string:length/1
10601198
string:module_info/0
10611199
string:module_info/1
10621200
string:split/2
@@ -1065,14 +1203,20 @@ string:to_lower/1
10651203
string:to_upper/1
10661204
string:trim/1
10671205
string:trim/2
1206+
supervisor:delete_child/2
10681207
supervisor:handle_call/3
10691208
supervisor:handle_cast/2
10701209
supervisor:handle_info/2
10711210
supervisor:init/1
10721211
supervisor:module_info/0
10731212
supervisor:module_info/1
1213+
supervisor:restart_child/2
1214+
supervisor:start_child/2
10741215
supervisor:start_link/2
10751216
supervisor:start_link/3
1217+
supervisor:terminate/2
1218+
supervisor:terminate_child/2
1219+
supervisor:which_children/1
10761220
timer:module_info/0
10771221
timer:module_info/1
10781222
timer:sleep/1

scripts/update_all_funcs.exs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ defmodule AllFuncsUpdater do
2020
first, followed by Elixir functions.
2121
"""
2222
@nifs_gperf_path "../AtomVM/src/libAtomVM/nifs.gperf"
23+
@estdlib_beam_path "../AtomVM/build/libs/estdlib/src/beams"
2324
@erlang_beam_path "../AtomVM/build/libs/eavmlib/src/beams"
2425
@elixir_beam_path "../AtomVM/build/libs/exavmlib/lib/beams"
2526
@funcs_txt_path "priv/funcs.txt"
@@ -74,7 +75,7 @@ defmodule AllFuncsUpdater do
7475
end
7576

7677
defp extract_beams do
77-
[@erlang_beam_path, @elixir_beam_path] |> Enum.flat_map(&extract_from_dir/1) |> Enum.uniq()
78+
[@estdlib_beam_path, @erlang_beam_path, @elixir_beam_path] |> Enum.flat_map(&extract_from_dir/1) |> Enum.uniq()
7879
end
7980

8081
defp extract_from_dir(path) do

0 commit comments

Comments
 (0)