1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
[
annotations_for_docs: fn
md ->
cond do
md[:module] != :erlang ->
[]
md.kind == :function && :erl_internal.guard_bif(md.name, md.arity) ->
true = :erl_internal.bif(md.name, md.arity)
["auto-imported", "allowed in guard tests"]
md.kind == :function && :erl_internal.bif(md.name, md.arity) ->
["auto-imported"]
md.kind == :type && :erl_internal.is_type(md.name, md.arity) ->
["predefined"]
true ->
[]
end
end,
groups_for_docs: [
{"Predefined datatypes",
fn a ->
a.kind == :type && a.module == :erlang && :erl_internal.is_type(a.name, a.arity)
end},
{"Types",
fn a ->
a.kind == :type
end},
{"Checksum",
fn a ->
a[:group] == :checksum
end},
{"Code",
fn a ->
a[:group] == :code
end},
{"Distributed Erlang",
fn a ->
a[:group] == :distribution
end},
{"Erlang Terms",
fn a ->
a[:group] == :terms
end},
{"Processes and Ports",
fn a ->
a[:group] == :processes || a[:group] == :ports
end},
{"System",
fn a ->
a[:group] == :system
end},
{"Time and timers",
fn a ->
a[:group] == :time || a[:group] == :timer
end},
{"Tracing",
fn a ->
a[:group] == :trace
end},
{"Deprecated functions",
fn a ->
a[:group] == :deprecated
end},
{"Functions without group",
fn a ->
if a.module == :erlang do
IO.puts(:stderr, "Undefined group #{a[:group]} for #{a.module}:#{a.name}/#{a.arity}")
true
else
false
end
end}
],
## The order of these items determine
## how they are listed in the docs
extras:
[
"guides/introduction.md",
"guides/communication.md",
"guides/time_correction.md",
"guides/match_spec.md",
"guides/crash_dump.md",
"guides/alt_dist.md",
"guides/alt_disco.md",
"guides/absform.md",
"guides/tty.md",
"guides/driver.md",
"guides/inet_cfg.md",
"guides/erl_ext_dist.md",
"guides/erl_dist_protocol.md",
"references/driver_entry.md",
"references/epmd_cmd.md",
"references/erl_cmd.md",
"references/erlc_cmd.md",
"references/erl_driver.md",
"references/erl_nif.md",
"references/erlsrv_cmd.md",
"references/erts_alloc.md",
"references/escript_cmd.md",
"references/run_erl_cmd.md",
"references/start_cmd.md",
"references/start_erl_cmd.md",
"references/werl_cmd.md"
] ++ Path.wildcard("../emulator/internal_doc/*.md"),
skip_code_autolink_to: [
"t:fun/0",
"dist_util:net_ticker_spawn_options/0",
"dist_util:handshake_we_started/1",
"dist_util:handshake_other_started/1",
"dist_util:start_timer/1",
"dist_util:strict_order_flags/0",
"erl_types:t_is_equal/2",
"erl_types:t_has_var/1"
]
]
|