exatomvm icon indicating copy to clipboard operation
exatomvm copied to clipboard

Update priv/funcs.txt (incl. script)

Open petermm opened this issue 5 months ago • 1 comments

Generated from previous snippets: https://github.com/atomvm/exatomvm/commit/bd4f0104e5f770547bf0ce80a22651e2df5bdd0e and https://github.com/atomvm/exatomvm/commit/0b6d98b73343aafc6b7fcb68260ca650cc96d3c0

The FuncsDiffAnalyzer is perhaps not needed beyond this PR, where sorting is enforced, but it's nice to have.

➜  ExAtomVM git:(update-funcs) ✗ elixir scripts/update_all_funcs.exs
Updating priv/funcs.txt...
Total: 1756 (nifs: 180, beams: 1017)

Git diff: +332 -235 = 97 net lines
Content: +98 -1 = 97 net functions
Math check: ✅ CONSISTENT

📈 NEW FUNCTIONS (98):
  + Elixir.Function:__info__/1
  + Elixir.Function:capture/3
  + Elixir.Function:identity/1
  + Elixir.Function:info/1
  + Elixir.Function:info/2
  + Elixir.Function:module_info/0
  + Elixir.Function:module_info/1
  + Elixir.Process:link/1
  + Elixir.Process:unlink/1
  + Elixir.Protocol:MACRO-def/2
  + Elixir.Protocol:MACRO-derive/3
  + Elixir.Protocol:MACRO-derive/4
  + Elixir.Protocol:__before_compile__/1
  + Elixir.Protocol:__concat__/2
  + Elixir.Protocol:__derive__/3
  + Elixir.Protocol:__impl__!/3
  + Elixir.Protocol:__impl__/4
  + Elixir.Protocol:__info__/1
  + Elixir.Protocol:__protocol__/2
  + Elixir.Protocol:assert_impl!/2
  + Elixir.Protocol:assert_protocol!/1
  + Elixir.Protocol:behaviour_info/1
  + Elixir.Protocol:consolidate/2
  + Elixir.Protocol:consolidated?/1
  + Elixir.Protocol:extract_impls/2
  + Elixir.Protocol:extract_protocols/1
  + Elixir.Protocol:module_info/0
  + Elixir.Protocol:module_info/1
  + atomvm:get_creation/0
  + atomvm:subprocess/4
  + binary:match/2
  + binary:match/3
  + binary:replace/3
  + binary:replace/4
  + code:all_available/0
  + code:all_loaded/0
  + epmd:handle_call/3
  + epmd:handle_cast/2
  + epmd:handle_info/2
  + epmd:init/1
  + epmd:module_info/0
  + epmd:module_info/1
  + epmd:start_link/1
  + epmd:terminate/2
  + erlang:--/2
  + erlang:dist_ctrl_get_data/1
  + erlang:dist_ctrl_get_data_notification/1
  + erlang:dist_ctrl_put_data/2
  + erlang:erase/0
  + erlang:fun_info/2
  + erlang:get/0
  + erlang:module_loaded/1
  + erlang:nif_error/1
  + erlang:port_to_list/1
  + erlang:setnode/2
  + erlang:setnode/3
  + erlang:split_binary/2
  + ets:delete/1
  + ets:delete/2
  + ets:insert/2
  + ets:lookup/2
  + ets:lookup_element/3
  + ets:new/2
  + ets:update_counter/3
  + ets:update_counter/4
  + mdns:handle_call/3
  + mdns:handle_cast/2
  + mdns:handle_info/2
  + mdns:init/1
  + mdns:module_info/0
  + mdns:module_info/1
  + mdns:parse_dns_message/1
  + mdns:parse_dns_name/2
  + mdns:serialize_dns_message/1
  + mdns:serialize_dns_name/1
  + mdns:start_link/1
  + mdns:stop/1
  + mdns:terminate/2
  + network:handle_continue/2
  + uart:read/2
  + websocket:buffered_amount/1
  + websocket:close/1
  + websocket:close/2
  + websocket:close/3
  + websocket:controlling_process/2
  + websocket:extensions/1
  + websocket:is_supported/0
  + websocket:module_info/0
  + websocket:module_info/1
  + websocket:new/1
  + websocket:new/2
  + websocket:new/3
  + websocket:protocol/1
  + websocket:ready_state/1
  + websocket:send_binary/2
  + websocket:send_utf8/2
  + websocket:url/1
  + zlib:compress/1

📉 REMOVED FUNCTIONS (1):
  - net:getaddrinfo_nif/2

petermm avatar Aug 11 '25 13:08 petermm

had forgotten estdlib:


elixir scripts/update_all_funcs.exs
Updating priv/funcs.txt...
Total: 1900 (nifs: 180, beams: 1740)

Git diff: +144 -0 = 144 net lines
Content: +144 -0 = 144 net functions
Math check: ✅ CONSISTENT

📈 NEW FUNCTIONS (144):
  + application:get_env/2
  + application:get_env/3
  + application:module_info/0
  + application:module_info/1
  + code:is_loaded/1
  + code:which/1
  + dist_util:cancel_timer/1
  + dist_util:handshake_other_started/1
  + dist_util:handshake_we_started/1
  + dist_util:module_info/0
  + dist_util:module_info/1
  + dist_util:net_ticker_spawn_options/0
  + dist_util:reset_timer/1
  + dist_util:shutdown/3
  + dist_util:shutdown/4
  + dist_util:start_timer/1
  + erl_epmd:code_change/3
  + erl_epmd:handle_call/3
  + erl_epmd:handle_cast/2
  + erl_epmd:handle_info/2
  + erl_epmd:init/1
  + erl_epmd:module_info/0
  + erl_epmd:module_info/1
  + erl_epmd:names/1
  + erl_epmd:port_please/2
  + erl_epmd:register_node/2
  + erl_epmd:start_link/0
  + erl_epmd:stop/0
  + erl_epmd:terminate/2
  + erlang:fun_info/1
  + erlang:get_cookie/0
  + erlang:get_cookie/1
  + erlang:is_alive/0
  + erlang:is_record/2
  + erlang:set_cookie/1
  + erlang:set_cookie/2
  + erlang:spawn_monitor/1
  + erlang:spawn_monitor/3
  + erlang:unique_integer/0
  + erlang:unique_integer/1
  + erpc:execute_call/4
  + erpc:module_info/0
  + erpc:module_info/1
  + ets:module_info/0
  + ets:module_info/1
  + inet:getaddr/2
  + init:boot/1
  + init:get_argument/1
  + init:get_plain_arguments/0
  + init:module_info/0
  + init:module_info/1
  + init:notify_when_started/1
  + io:columns/0
  + io:columns/1
  + io:format/3
  + io:fwrite/1
  + io:fwrite/2
  + io:fwrite/3
  + io:getopts/0
  + io:getopts/1
  + io:printable_range/0
  + io:requests/1
  + io:scan_erl_exprs/4
  + io_lib:chars_length/1
  + io_lib:fwrite/2
  + io_lib:printable_list/1
  + io_lib:write/1
  + io_lib:write_atom/1
  + io_lib:write_string/1
  + io_lib:write_string/2
  + kernel:init/1
  + kernel:module_info/0
  + kernel:module_info/1
  + kernel:start/2
  + kernel:stop/1
  + lists:append/1
  + lists:append/2
  + lists:dropwhile/2
  + lists:flatmap/2
  + lists:keysort/2
  + lists:merge/2
  + lists:merge/3
  + net:gethostname/0
  + net_kernel:epmd_module/0
  + net_kernel:get_cookie/0
  + net_kernel:get_cookie/1
  + net_kernel:get_net_ticktime/0
  + net_kernel:get_state/0
  + net_kernel:handle_call/3
  + net_kernel:handle_cast/2
  + net_kernel:handle_info/2
  + net_kernel:init/1
  + net_kernel:mark_nodeup/4
  + net_kernel:mark_pending/4
  + net_kernel:module_info/0
  + net_kernel:module_info/1
  + net_kernel:set_cookie/1
  + net_kernel:set_cookie/2
  + net_kernel:start/2
  + net_kernel:start_link/1
  + net_kernel:stop/0
  + net_kernel:terminate/2
  + net_kernel_sup:init/1
  + net_kernel_sup:module_info/0
  + net_kernel_sup:module_info/1
  + net_kernel_sup:start/1
  + net_kernel_sup:start_link/1
  + net_kernel_sup:stop/0
  + socket:getopt/2
  + socket_dist:accept/1
  + socket_dist:accept_connection/5
  + socket_dist:address/0
  + socket_dist:close/1
  + socket_dist:listen/1
  + socket_dist:module_info/0
  + socket_dist:module_info/1
  + socket_dist:select/1
  + socket_dist:setup/5
  + socket_dist_controller:address/2
  + socket_dist_controller:code_change/3
  + socket_dist_controller:getll/1
  + socket_dist_controller:getstat/1
  + socket_dist_controller:handle_call/3
  + socket_dist_controller:handle_cast/2
  + socket_dist_controller:handle_info/2
  + socket_dist_controller:handshake_complete/3
  + socket_dist_controller:init/1
  + socket_dist_controller:module_info/0
  + socket_dist_controller:module_info/1
  + socket_dist_controller:recv/3
  + socket_dist_controller:send/2
  + socket_dist_controller:setopts_post_nodeup/1
  + socket_dist_controller:setopts_pre_nodeup/1
  + socket_dist_controller:start/1
  + socket_dist_controller:supervisor/2
  + socket_dist_controller:terminate/2
  + socket_dist_controller:tick/1
  + string:length/1
  + supervisor:delete_child/2
  + supervisor:restart_child/2
  + supervisor:start_child/2
  + supervisor:terminate/2
  + supervisor:terminate_child/2
  + supervisor:which_children/1

petermm avatar Aug 11 '25 21:08 petermm